{
  "IntrinsicTypes": {
    "Fn::Base64": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-base64.html",
      "ReturnTypes": [
        "Singular"
      ]
    },
    "Fn::Cidr": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-cidr.html",
      "ReturnTypes": [
        "List"
      ]
    },
    "Fn::FindInMap": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html",
      "ReturnTypes": [
        "Singular",
        "List"
      ]
    },
    "Fn::GetAZs": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getavailabilityzones.html",
      "ReturnTypes": [
        "List"
      ]
    },
    "Fn::GetAtt": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html",
      "ReturnTypes": [
        "Singular",
        "List"
      ]
    },
    "Fn::If": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-conditions.html#intrinsic-function-reference-conditions-if",
      "ReturnTypes": [
        "Singular",
        "List"
      ]
    },
    "Fn::ImportValue": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html",
      "ReturnTypes": [
        "Singular"
      ]
    },
    "Fn::Join": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html",
      "ReturnTypes": [
        "Singular"
      ]
    },
    "Fn::Select": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-select.html",
      "ReturnTypes": [
        "Singular",
        "List"
      ]
    },
    "Fn::Split": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-split.html",
      "ReturnTypes": [
        "List"
      ]
    },
    "Fn::Sub": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-sub.html",
      "ReturnTypes": [
        "Singular"
      ]
    },
    "Fn::Transform": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-transform.html",
      "ReturnTypes": []
    },
    "Ref": {
      "Documentation": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html",
      "ReturnTypes": [
        "Singular",
        "List"
      ]
    }
  },
  "ParameterTypes": {
    "AvailabilityZone": [
      "AWS::EC2::AvailabilityZone::Name",
      "AWS::SSM::Parameter::Value<AWS::EC2::AvailabilityZone::Name>"
    ],
    "AvailabilityZones": [
      "List<AWS::EC2::AvailabilityZone::Name>",
      "AWS::SSM::Parameter::Value<List<AWS::EC2::AvailabilityZone::Name>>"
    ],
    "ImageId": [
      "AWS::EC2::Image::Id",
      "AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>"
    ],
    "KeyPair": [
      "AWS::EC2::KeyPair::KeyName",
      "AWS::SSM::Parameter::Value<AWS::EC2::KeyPair::KeyName>"
    ],
    "Number": [
      "Number",
      "AWS::SSM::Parameter::Value<Number>"
    ],
    "Numbers": [
      "List<Number>",
      "List<AWS::SSM::Parameter::Value<Number>>"
    ],
    "SecurityGroupId": [
      "AWS::EC2::SecurityGroup::Id",
      "AWS::SSM::Parameter::Value<AWS::EC2::SecurityGroup::Id>"
    ],
    "SecurityGroupIds": [
      "List<AWS::EC2::SecurityGroup::Id>",
      "AWS::SSM::Parameter::Value<List<AWS::EC2::SecurityGroup::Id>>"
    ],
    "String": [
      "String",
      "AWS::SSM::Parameter::Value<String>"
    ],
    "Strings": [
      "CommaDelimitedList",
      "List<String>",
      "AWS::SSM::Parameter::Value<List<String>>",
      "AWS::SSM::Parameter::Value<CommaDelimitedList>"
    ],
    "SubnetId": [
      "AWS::EC2::Subnet::Id",
      "AWS::SSM::Parameter::Value<AWS::EC2::Subnet::Id>"
    ],
    "SubnetIds": [
      "List<AWS::EC2::Subnet::Id>",
      "AWS::SSM::Parameter::Value<List<AWS::EC2::Subnet::Id>>"
    ],
    "VpcId": [
      "AWS::EC2::VPC::Id",
      "AWS::SSM::Parameter::Value<AWS::EC2::VPC::Id>"
    ]
  },
  "PropertyTypes": {
    "AWS::ACMPCA::Certificate.ApiPassthrough": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-apipassthrough.html",
      "Properties": {
        "Extensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-apipassthrough.html#cfn-acmpca-certificate-apipassthrough-extensions",
          "Required": false,
          "Type": "Extensions",
          "UpdateType": "Immutable"
        },
        "Subject": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-apipassthrough.html#cfn-acmpca-certificate-apipassthrough-subject",
          "Required": false,
          "Type": "Subject",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.CertificatePolicyList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-certificatepolicylist.html",
      "Properties": {
        "CertificatePolicyList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-certificatepolicylist.html#cfn-acmpca-certificate-certificatepolicylist-certificatepolicylist",
          "ItemType": "PolicyInformation",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.EdiPartyName": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-edipartyname.html",
      "Properties": {
        "NameAssigner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-edipartyname.html#cfn-acmpca-certificate-edipartyname-nameassigner",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PartyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-edipartyname.html#cfn-acmpca-certificate-edipartyname-partyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.ExtendedKeyUsage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extendedkeyusage.html",
      "Properties": {
        "ExtendedKeyUsageObjectIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extendedkeyusage.html#cfn-acmpca-certificate-extendedkeyusage-extendedkeyusageobjectidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ExtendedKeyUsageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extendedkeyusage.html#cfn-acmpca-certificate-extendedkeyusage-extendedkeyusagetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.ExtendedKeyUsageList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extendedkeyusagelist.html",
      "Properties": {
        "ExtendedKeyUsageList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extendedkeyusagelist.html#cfn-acmpca-certificate-extendedkeyusagelist-extendedkeyusagelist",
          "ItemType": "ExtendedKeyUsage",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.Extensions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extensions.html",
      "Properties": {
        "CertificatePolicies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extensions.html#cfn-acmpca-certificate-extensions-certificatepolicies",
          "Required": false,
          "Type": "CertificatePolicyList",
          "UpdateType": "Immutable"
        },
        "ExtendedKeyUsage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extensions.html#cfn-acmpca-certificate-extensions-extendedkeyusage",
          "Required": false,
          "Type": "ExtendedKeyUsageList",
          "UpdateType": "Immutable"
        },
        "KeyUsage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extensions.html#cfn-acmpca-certificate-extensions-keyusage",
          "Required": false,
          "Type": "KeyUsage",
          "UpdateType": "Immutable"
        },
        "SubjectAlternativeNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extensions.html#cfn-acmpca-certificate-extensions-subjectalternativenames",
          "Required": false,
          "Type": "GeneralNameList",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.GeneralName": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html",
      "Properties": {
        "DirectoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-directoryname",
          "Required": false,
          "Type": "Subject",
          "UpdateType": "Immutable"
        },
        "DnsName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-dnsname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EdiPartyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-edipartyname",
          "Required": false,
          "Type": "EdiPartyName",
          "UpdateType": "Immutable"
        },
        "IpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-ipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OtherName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-othername",
          "Required": false,
          "Type": "OtherName",
          "UpdateType": "Immutable"
        },
        "RegisteredId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-registeredid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Rfc822Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-rfc822name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "UniformResourceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html#cfn-acmpca-certificate-generalname-uniformresourceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.GeneralNameList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalnamelist.html",
      "Properties": {
        "GeneralNameList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalnamelist.html#cfn-acmpca-certificate-generalnamelist-generalnamelist",
          "ItemType": "GeneralName",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.KeyUsage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html",
      "Properties": {
        "CRLSign": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-crlsign",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DataEncipherment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-dataencipherment",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DecipherOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-decipheronly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DigitalSignature": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-digitalsignature",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EncipherOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-encipheronly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeyAgreement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-keyagreement",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeyCertSign": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-keycertsign",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeyEncipherment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-keyencipherment",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NonRepudiation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html#cfn-acmpca-certificate-keyusage-nonrepudiation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.OtherName": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-othername.html",
      "Properties": {
        "TypeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-othername.html#cfn-acmpca-certificate-othername-typeid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-othername.html#cfn-acmpca-certificate-othername-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.PolicyInformation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyinformation.html",
      "Properties": {
        "CertPolicyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyinformation.html#cfn-acmpca-certificate-policyinformation-certpolicyid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PolicyQualifiers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyinformation.html#cfn-acmpca-certificate-policyinformation-policyqualifiers",
          "Required": false,
          "Type": "PolicyQualifierInfoList",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.PolicyQualifierInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyqualifierinfo.html",
      "Properties": {
        "PolicyQualifierId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyqualifierinfo.html#cfn-acmpca-certificate-policyqualifierinfo-policyqualifierid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Qualifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyqualifierinfo.html#cfn-acmpca-certificate-policyqualifierinfo-qualifier",
          "Required": true,
          "Type": "Qualifier",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.PolicyQualifierInfoList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyqualifierinfolist.html",
      "Properties": {
        "PolicyQualifierInfoList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyqualifierinfolist.html#cfn-acmpca-certificate-policyqualifierinfolist-policyqualifierinfolist",
          "ItemType": "PolicyQualifierInfo",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.Qualifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-qualifier.html",
      "Properties": {
        "CpsUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-qualifier.html#cfn-acmpca-certificate-qualifier-cpsuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.Subject": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html",
      "Properties": {
        "CommonName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-commonname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Country": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-country",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DistinguishedNameQualifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-distinguishednamequalifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GenerationQualifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-generationqualifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GivenName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-givenname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Initials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-initials",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Locality": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-locality",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Organization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-organization",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OrganizationalUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-organizationalunit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Pseudonym": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-pseudonym",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SerialNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-serialnumber",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Surname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-surname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Title": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-subject.html#cfn-acmpca-certificate-subject-title",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::Certificate.Validity": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-validity.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-validity.html#cfn-acmpca-certificate-validity-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-validity.html#cfn-acmpca-certificate-validity-value",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.AccessDescription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-accessdescription.html",
      "Properties": {
        "AccessLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-accessdescription.html#cfn-acmpca-certificateauthority-accessdescription-accesslocation",
          "Required": true,
          "Type": "GeneralName",
          "UpdateType": "Immutable"
        },
        "AccessMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-accessdescription.html#cfn-acmpca-certificateauthority-accessdescription-accessmethod",
          "Required": true,
          "Type": "AccessMethod",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.AccessMethod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-accessmethod.html",
      "Properties": {
        "AccessMethodType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-accessmethod.html#cfn-acmpca-certificateauthority-accessmethod-accessmethodtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CustomObjectIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-accessmethod.html#cfn-acmpca-certificateauthority-accessmethod-customobjectidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.CrlConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html",
      "Properties": {
        "CustomCname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-customcname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExpirationInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-expirationindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-s3bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.CsrExtensions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-csrextensions.html",
      "Properties": {
        "KeyUsage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-csrextensions.html#cfn-acmpca-certificateauthority-csrextensions-keyusage",
          "Required": false,
          "Type": "KeyUsage",
          "UpdateType": "Immutable"
        },
        "SubjectInformationAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-csrextensions.html#cfn-acmpca-certificateauthority-csrextensions-subjectinformationaccess",
          "Required": false,
          "Type": "SubjectInformationAccess",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.EdiPartyName": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-edipartyname.html",
      "Properties": {
        "NameAssigner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-edipartyname.html#cfn-acmpca-certificateauthority-edipartyname-nameassigner",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PartyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-edipartyname.html#cfn-acmpca-certificateauthority-edipartyname-partyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.GeneralName": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html",
      "Properties": {
        "DirectoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-directoryname",
          "Required": false,
          "Type": "Subject",
          "UpdateType": "Immutable"
        },
        "DnsName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-dnsname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EdiPartyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-edipartyname",
          "Required": false,
          "Type": "EdiPartyName",
          "UpdateType": "Immutable"
        },
        "IpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-ipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OtherName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-othername",
          "Required": false,
          "Type": "OtherName",
          "UpdateType": "Immutable"
        },
        "RegisteredId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-registeredid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Rfc822Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-rfc822name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "UniformResourceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-generalname.html#cfn-acmpca-certificateauthority-generalname-uniformresourceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.KeyUsage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html",
      "Properties": {
        "CRLSign": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-crlsign",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DataEncipherment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-dataencipherment",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DecipherOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-decipheronly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DigitalSignature": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-digitalsignature",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EncipherOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-encipheronly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeyAgreement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-keyagreement",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeyCertSign": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-keycertsign",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeyEncipherment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-keyencipherment",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NonRepudiation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-keyusage.html#cfn-acmpca-certificateauthority-keyusage-nonrepudiation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.OtherName": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-othername.html",
      "Properties": {
        "TypeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-othername.html#cfn-acmpca-certificateauthority-othername-typeid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-othername.html#cfn-acmpca-certificateauthority-othername-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.RevocationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-revocationconfiguration.html",
      "Properties": {
        "CrlConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-revocationconfiguration.html#cfn-acmpca-certificateauthority-revocationconfiguration-crlconfiguration",
          "Required": false,
          "Type": "CrlConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.Subject": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html",
      "Properties": {
        "CommonName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-commonname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Country": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-country",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DistinguishedNameQualifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-distinguishednamequalifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GenerationQualifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-generationqualifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GivenName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-givenname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Initials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-initials",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Locality": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-locality",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Organization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-organization",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OrganizationalUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-organizationalunit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Pseudonym": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-pseudonym",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SerialNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-serialnumber",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Surname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-surname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Title": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subject.html#cfn-acmpca-certificateauthority-subject-title",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority.SubjectInformationAccess": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subjectinformationaccess.html",
      "Properties": {
        "SubjectInformationAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-subjectinformationaccess.html#cfn-acmpca-certificateauthority-subjectinformationaccess-subjectinformationaccess",
          "ItemType": "AccessDescription",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AccessAnalyzer::Analyzer.ArchiveRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-archiverule.html",
      "Properties": {
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-archiverule.html#cfn-accessanalyzer-analyzer-archiverule-filter",
          "ItemType": "Filter",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-archiverule.html#cfn-accessanalyzer-analyzer-archiverule-rulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AccessAnalyzer::Analyzer.Filter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-filter.html",
      "Properties": {
        "Contains": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-filter.html#cfn-accessanalyzer-analyzer-filter-contains",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Eq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-filter.html#cfn-accessanalyzer-analyzer-filter-eq",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Exists": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-filter.html#cfn-accessanalyzer-analyzer-filter-exists",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Neq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-filter.html#cfn-accessanalyzer-analyzer-filter-neq",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Property": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-filter.html#cfn-accessanalyzer-analyzer-filter-property",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker.ConfigurationId": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Revision": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-revision",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker.EncryptionOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UseAwsOwnedKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-useawsownedkey",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker.LdapServerMetadata": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html",
      "Properties": {
        "Hosts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-hosts",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RoleBase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolebase",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleSearchMatching": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolesearchmatching",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleSearchSubtree": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolesearchsubtree",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceAccountPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-serviceaccountpassword",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ServiceAccountUsername": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-serviceaccountusername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserBase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-userbase",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserRoleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-userrolename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserSearchMatching": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-usersearchmatching",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserSearchSubtree": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-usersearchsubtree",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker.LogList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html",
      "Properties": {
        "Audit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html#cfn-amazonmq-broker-loglist-audit",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "General": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html#cfn-amazonmq-broker-loglist-general",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker.MaintenanceWindow": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html",
      "Properties": {
        "DayOfWeek": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html#cfn-amazonmq-broker-maintenancewindow-dayofweek",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeOfDay": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html#cfn-amazonmq-broker-maintenancewindow-timeofday",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html#cfn-amazonmq-broker-maintenancewindow-timezone",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker.TagsEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html#cfn-amazonmq-broker-tagsentry-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html#cfn-amazonmq-broker-tagsentry-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker.User": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html",
      "Properties": {
        "ConsoleAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-consoleaccess",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Groups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-groups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Configuration.TagsEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::ConfigurationAssociation.ConfigurationId": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Revision": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-revision",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::App.AutoBranchCreationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html",
      "Properties": {
        "AutoBranchCreationPatterns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-autobranchcreationpatterns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "BasicAuthConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-basicauthconfig",
          "Required": false,
          "Type": "BasicAuthConfig",
          "UpdateType": "Mutable"
        },
        "BuildSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-buildspec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableAutoBranchCreation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-enableautobranchcreation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableAutoBuild": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-enableautobuild",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnablePerformanceMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-enableperformancemode",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnablePullRequestPreview": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-enablepullrequestpreview",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnvironmentVariables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-environmentvariables",
          "ItemType": "EnvironmentVariable",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PullRequestEnvironmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-pullrequestenvironmentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Stage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-stage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::App.BasicAuthConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html",
      "Properties": {
        "EnableBasicAuth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html#cfn-amplify-app-basicauthconfig-enablebasicauth",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html#cfn-amplify-app-basicauthconfig-password",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html#cfn-amplify-app-basicauthconfig-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::App.CustomRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html",
      "Properties": {
        "Condition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-condition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-source",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-target",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::App.EnvironmentVariable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::Branch.BasicAuthConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html",
      "Properties": {
        "EnableBasicAuth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html#cfn-amplify-branch-basicauthconfig-enablebasicauth",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html#cfn-amplify-branch-basicauthconfig-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html#cfn-amplify-branch-basicauthconfig-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::Branch.EnvironmentVariable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::Domain.SubDomainSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html",
      "Properties": {
        "BranchName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-branchname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-prefix",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::ApiKey.StageKey": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html",
      "Properties": {
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-restapiid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-stagename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Deployment.AccessLogSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html",
      "Properties": {
        "DestinationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-destinationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-format",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Deployment.CanarySetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html",
      "Properties": {
        "PercentTraffic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html#cfn-apigateway-deployment-canarysetting-percenttraffic",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StageVariableOverrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html#cfn-apigateway-deployment-canarysetting-stagevariableoverrides",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "UseStageCache": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html#cfn-apigateway-deployment-canarysetting-usestagecache",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Deployment.DeploymentCanarySettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html",
      "Properties": {
        "PercentTraffic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-percenttraffic",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StageVariableOverrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-stagevariableoverrides",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "UseStageCache": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-usestagecache",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ApiGateway::Deployment.MethodSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html",
      "Properties": {
        "CacheDataEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachedataencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheTtlInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachettlinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CachingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataTraceEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-datatraceenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-httpmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoggingLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-logginglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-metricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourcePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-resourcepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThrottlingBurstLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingburstlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThrottlingRateLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingratelimit",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Deployment.StageDescription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html",
      "Properties": {
        "AccessLogSetting": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-accesslogsetting",
          "Required": false,
          "Type": "AccessLogSetting",
          "UpdateType": "Mutable"
        },
        "CacheClusterEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclusterenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheClusterSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclustersize",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheDataEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachedataencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheTtlInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachettlinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CachingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CanarySetting": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-canarysetting",
          "Required": false,
          "Type": "CanarySetting",
          "UpdateType": "Mutable"
        },
        "ClientCertificateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-clientcertificateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataTraceEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-datatraceenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DocumentationVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-documentationversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoggingLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-logginglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MethodSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-methodsettings",
          "DuplicatesAllowed": false,
          "ItemType": "MethodSetting",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-metricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ThrottlingBurstLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingburstlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThrottlingRateLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingratelimit",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TracingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-tracingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Variables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-variables",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::DocumentationPart.Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html",
      "Properties": {
        "Method": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-method",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-statuscode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ApiGateway::DomainName.EndpointConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html",
      "Properties": {
        "Types": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html#cfn-apigateway-domainname-endpointconfiguration-types",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::DomainName.MutualTlsAuthentication": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-mutualtlsauthentication.html",
      "Properties": {
        "TruststoreUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-mutualtlsauthentication.html#cfn-apigateway-domainname-mutualtlsauthentication-truststoreuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TruststoreVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-mutualtlsauthentication.html#cfn-apigateway-domainname-mutualtlsauthentication-truststoreversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Method.Integration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html",
      "Properties": {
        "CacheKeyParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-cachekeyparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CacheNamespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-cachenamespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-connectionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-connectiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ContentHandling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-contenthandling",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Credentials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-credentials",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegrationHttpMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-integrationhttpmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegrationResponses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-integrationresponses",
          "DuplicatesAllowed": false,
          "ItemType": "IntegrationResponse",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PassthroughBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-passthroughbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-requestparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "RequestTemplates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-requesttemplates",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "TimeoutInMillis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-timeoutinmillis",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Method.IntegrationResponse": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html",
      "Properties": {
        "ContentHandling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integrationresponse-contenthandling",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-responseparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "ResponseTemplates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-responsetemplates",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "SelectionPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-selectionpattern",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-statuscode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Method.MethodResponse": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html",
      "Properties": {
        "ResponseModels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-responsemodels",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "ResponseParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-responseparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "Boolean",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-statuscode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::RestApi.EndpointConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html",
      "Properties": {
        "Types": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcEndpointIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-vpcendpointids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::RestApi.S3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-bucket",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ETag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-etag",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Stage.AccessLogSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html",
      "Properties": {
        "DestinationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-destinationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-format",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Stage.CanarySetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html",
      "Properties": {
        "DeploymentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-deploymentid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PercentTraffic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-percenttraffic",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StageVariableOverrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-stagevariableoverrides",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "UseStageCache": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-usestagecache",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Stage.MethodSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html",
      "Properties": {
        "CacheDataEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachedataencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheTtlInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachettlinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CachingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataTraceEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-datatraceenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-httpmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoggingLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-logginglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-metricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourcePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-resourcepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThrottlingBurstLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-throttlingburstlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThrottlingRateLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-throttlingratelimit",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::UsagePlan.ApiStage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-apiid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Stage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-stage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Throttle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-throttle",
          "DuplicatesAllowed": false,
          "ItemType": "ThrottleSettings",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::UsagePlan.QuotaSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html",
      "Properties": {
        "Limit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-limit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Offset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-offset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-period",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::UsagePlan.ThrottleSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html",
      "Properties": {
        "BurstLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-burstlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RateLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-ratelimit",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Api.BodyS3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-bucket",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Etag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-etag",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Api.Cors": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-cors.html",
      "Properties": {
        "AllowCredentials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-cors.html#cfn-apigatewayv2-api-cors-allowcredentials",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AllowHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-cors.html#cfn-apigatewayv2-api-cors-allowheaders",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AllowMethods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-cors.html#cfn-apigatewayv2-api-cors-allowmethods",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AllowOrigins": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-cors.html#cfn-apigatewayv2-api-cors-alloworigins",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ExposeHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-cors.html#cfn-apigatewayv2-api-cors-exposeheaders",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaxAge": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-cors.html#cfn-apigatewayv2-api-cors-maxage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Authorizer.JWTConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-authorizer-jwtconfiguration.html",
      "Properties": {
        "Audience": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-authorizer-jwtconfiguration.html#cfn-apigatewayv2-authorizer-jwtconfiguration-audience",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Issuer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-authorizer-jwtconfiguration.html#cfn-apigatewayv2-authorizer-jwtconfiguration-issuer",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::DomainName.DomainNameConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CertificateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndpointType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-endpointtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-securitypolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::DomainName.MutualTlsAuthentication": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-mutualtlsauthentication.html",
      "Properties": {
        "TruststoreUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-mutualtlsauthentication.html#cfn-apigatewayv2-domainname-mutualtlsauthentication-truststoreuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TruststoreVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-mutualtlsauthentication.html#cfn-apigatewayv2-domainname-mutualtlsauthentication-truststoreversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Integration.ResponseParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-responseparameter.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-responseparameter.html#cfn-apigatewayv2-integration-responseparameter-destination",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-responseparameter.html#cfn-apigatewayv2-integration-responseparameter-source",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Integration.ResponseParameterList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-responseparameterlist.html",
      "Properties": {
        "ResponseParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-responseparameterlist.html#cfn-apigatewayv2-integration-responseparameterlist-responseparameters",
          "ItemType": "ResponseParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Integration.TlsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-tlsconfig.html",
      "Properties": {
        "ServerNameToVerify": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-tlsconfig.html#cfn-apigatewayv2-integration-tlsconfig-servernametoverify",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Route.ParameterConstraints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html",
      "Properties": {
        "Required": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html#cfn-apigatewayv2-route-parameterconstraints-required",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::RouteResponse.ParameterConstraints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html",
      "Properties": {
        "Required": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html#cfn-apigatewayv2-routeresponse-parameterconstraints-required",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Stage.AccessLogSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html",
      "Properties": {
        "DestinationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-destinationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-format",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Stage.RouteSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html",
      "Properties": {
        "DataTraceEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-datatraceenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DetailedMetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-detailedmetricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoggingLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-logginglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThrottlingBurstLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-throttlingburstlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThrottlingRateLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-throttlingratelimit",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.AmplitudeConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-amplitudeconnectorprofilecredentials.html",
      "Properties": {
        "ApiKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-amplitudeconnectorprofilecredentials.html#cfn-appflow-connectorprofile-amplitudeconnectorprofilecredentials-apikey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.AmplitudeConnectorProfileCredentials.ApiKey"
          }
        },
        "SecretKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-amplitudeconnectorprofilecredentials.html#cfn-appflow-connectorprofile-amplitudeconnectorprofilecredentials-secretkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.AmplitudeConnectorProfileCredentials.SecretKey"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ConnectorOAuthRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectoroauthrequest.html",
      "Properties": {
        "AuthCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectoroauthrequest.html#cfn-appflow-connectorprofile-connectoroauthrequest-authcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RedirectUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectoroauthrequest.html#cfn-appflow-connectorprofile-connectoroauthrequest-redirecturi",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ConnectorProfileConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileconfig.html",
      "Properties": {
        "ConnectorProfileCredentials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileconfig.html#cfn-appflow-connectorprofile-connectorprofileconfig-connectorprofilecredentials",
          "Required": true,
          "Type": "ConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "ConnectorProfileProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileconfig.html#cfn-appflow-connectorprofile-connectorprofileconfig-connectorprofileproperties",
          "Required": false,
          "Type": "ConnectorProfileProperties",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html",
      "Properties": {
        "Amplitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-amplitude",
          "Required": false,
          "Type": "AmplitudeConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Datadog": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-datadog",
          "Required": false,
          "Type": "DatadogConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Dynatrace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-dynatrace",
          "Required": false,
          "Type": "DynatraceConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "GoogleAnalytics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-googleanalytics",
          "Required": false,
          "Type": "GoogleAnalyticsConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "InforNexus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-infornexus",
          "Required": false,
          "Type": "InforNexusConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Marketo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-marketo",
          "Required": false,
          "Type": "MarketoConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Redshift": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-redshift",
          "Required": false,
          "Type": "RedshiftConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Salesforce": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-salesforce",
          "Required": false,
          "Type": "SalesforceConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "ServiceNow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-servicenow",
          "Required": false,
          "Type": "ServiceNowConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Singular": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-singular",
          "Required": false,
          "Type": "SingularConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Slack": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-slack",
          "Required": false,
          "Type": "SlackConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Snowflake": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-snowflake",
          "Required": false,
          "Type": "SnowflakeConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Trendmicro": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-trendmicro",
          "Required": false,
          "Type": "TrendmicroConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Veeva": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-veeva",
          "Required": false,
          "Type": "VeevaConnectorProfileCredentials",
          "UpdateType": "Mutable"
        },
        "Zendesk": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofilecredentials.html#cfn-appflow-connectorprofile-connectorprofilecredentials-zendesk",
          "Required": false,
          "Type": "ZendeskConnectorProfileCredentials",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html",
      "Properties": {
        "Datadog": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-datadog",
          "Required": false,
          "Type": "DatadogConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Dynatrace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-dynatrace",
          "Required": false,
          "Type": "DynatraceConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "InforNexus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-infornexus",
          "Required": false,
          "Type": "InforNexusConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Marketo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-marketo",
          "Required": false,
          "Type": "MarketoConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Redshift": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-redshift",
          "Required": false,
          "Type": "RedshiftConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Salesforce": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-salesforce",
          "Required": false,
          "Type": "SalesforceConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "ServiceNow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-servicenow",
          "Required": false,
          "Type": "ServiceNowConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Slack": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-slack",
          "Required": false,
          "Type": "SlackConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Snowflake": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-snowflake",
          "Required": false,
          "Type": "SnowflakeConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Veeva": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-veeva",
          "Required": false,
          "Type": "VeevaConnectorProfileProperties",
          "UpdateType": "Mutable"
        },
        "Zendesk": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-connectorprofileproperties.html#cfn-appflow-connectorprofile-connectorprofileproperties-zendesk",
          "Required": false,
          "Type": "ZendeskConnectorProfileProperties",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-datadogconnectorprofilecredentials.html",
      "Properties": {
        "ApiKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-datadogconnectorprofilecredentials.html#cfn-appflow-connectorprofile-datadogconnectorprofilecredentials-apikey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileCredentials.ApiKey"
          }
        },
        "ApplicationKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-datadogconnectorprofilecredentials.html#cfn-appflow-connectorprofile-datadogconnectorprofilecredentials-applicationkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileCredentials.ApplicationKey"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-datadogconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-datadogconnectorprofileproperties.html#cfn-appflow-connectorprofile-datadogconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.DynatraceConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-dynatraceconnectorprofilecredentials.html",
      "Properties": {
        "ApiToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-dynatraceconnectorprofilecredentials.html#cfn-appflow-connectorprofile-dynatraceconnectorprofilecredentials-apitoken",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.DynatraceConnectorProfileCredentials.ApiToken"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.DynatraceConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-dynatraceconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-dynatraceconnectorprofileproperties.html#cfn-appflow-connectorprofile-dynatraceconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.DynatraceConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials.html",
      "Properties": {
        "AccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials.html#cfn-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials-accesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.AccessToken"
          }
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials.html#cfn-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.ClientId"
          }
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials.html#cfn-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.ClientSecret"
          }
        },
        "ConnectorOAuthRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials.html#cfn-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials-connectoroauthrequest",
          "Required": false,
          "Type": "ConnectorOAuthRequest",
          "UpdateType": "Mutable"
        },
        "RefreshToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials.html#cfn-appflow-connectorprofile-googleanalyticsconnectorprofilecredentials-refreshtoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.RefreshToken"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-infornexusconnectorprofilecredentials.html",
      "Properties": {
        "AccessKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-infornexusconnectorprofilecredentials.html#cfn-appflow-connectorprofile-infornexusconnectorprofilecredentials-accesskeyid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.AccessKeyId"
          }
        },
        "Datakey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-infornexusconnectorprofilecredentials.html#cfn-appflow-connectorprofile-infornexusconnectorprofilecredentials-datakey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.Datakey"
          }
        },
        "SecretAccessKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-infornexusconnectorprofilecredentials.html#cfn-appflow-connectorprofile-infornexusconnectorprofilecredentials-secretaccesskey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.SecretAccessKey"
          }
        },
        "UserId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-infornexusconnectorprofilecredentials.html#cfn-appflow-connectorprofile-infornexusconnectorprofilecredentials-userid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.UserId"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-infornexusconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-infornexusconnectorprofileproperties.html#cfn-appflow-connectorprofile-infornexusconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-marketoconnectorprofilecredentials.html",
      "Properties": {
        "AccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-marketoconnectorprofilecredentials.html#cfn-appflow-connectorprofile-marketoconnectorprofilecredentials-accesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileCredentials.AccessToken"
          }
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-marketoconnectorprofilecredentials.html#cfn-appflow-connectorprofile-marketoconnectorprofilecredentials-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileCredentials.ClientId"
          }
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-marketoconnectorprofilecredentials.html#cfn-appflow-connectorprofile-marketoconnectorprofilecredentials-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileCredentials.ClientSecret"
          }
        },
        "ConnectorOAuthRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-marketoconnectorprofilecredentials.html#cfn-appflow-connectorprofile-marketoconnectorprofilecredentials-connectoroauthrequest",
          "Required": false,
          "Type": "ConnectorOAuthRequest",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-marketoconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-marketoconnectorprofileproperties.html#cfn-appflow-connectorprofile-marketoconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofilecredentials.html",
      "Properties": {
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofilecredentials.html#cfn-appflow-connectorprofile-redshiftconnectorprofilecredentials-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileCredentials.Password"
          }
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofilecredentials.html#cfn-appflow-connectorprofile-redshiftconnectorprofilecredentials-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileCredentials.Username"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofileproperties.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofileproperties.html#cfn-appflow-connectorprofile-redshiftconnectorprofileproperties-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileProperties.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofileproperties.html#cfn-appflow-connectorprofile-redshiftconnectorprofileproperties-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofileproperties.html#cfn-appflow-connectorprofile-redshiftconnectorprofileproperties-databaseurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileProperties.DatabaseUrl"
          }
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-redshiftconnectorprofileproperties.html#cfn-appflow-connectorprofile-redshiftconnectorprofileproperties-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileProperties.RoleArn"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofilecredentials.html",
      "Properties": {
        "AccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofilecredentials.html#cfn-appflow-connectorprofile-salesforceconnectorprofilecredentials-accesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileCredentials.AccessToken"
          }
        },
        "ClientCredentialsArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofilecredentials.html#cfn-appflow-connectorprofile-salesforceconnectorprofilecredentials-clientcredentialsarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileCredentials.ClientCredentialsArn"
          }
        },
        "ConnectorOAuthRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofilecredentials.html#cfn-appflow-connectorprofile-salesforceconnectorprofilecredentials-connectoroauthrequest",
          "Required": false,
          "Type": "ConnectorOAuthRequest",
          "UpdateType": "Mutable"
        },
        "RefreshToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofilecredentials.html#cfn-appflow-connectorprofile-salesforceconnectorprofilecredentials-refreshtoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileCredentials.RefreshToken"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofileproperties.html#cfn-appflow-connectorprofile-salesforceconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileProperties.InstanceUrl"
          }
        },
        "isSandboxEnvironment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-salesforceconnectorprofileproperties.html#cfn-appflow-connectorprofile-salesforceconnectorprofileproperties-issandboxenvironment",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-servicenowconnectorprofilecredentials.html",
      "Properties": {
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-servicenowconnectorprofilecredentials.html#cfn-appflow-connectorprofile-servicenowconnectorprofilecredentials-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileCredentials.Password"
          }
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-servicenowconnectorprofilecredentials.html#cfn-appflow-connectorprofile-servicenowconnectorprofilecredentials-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileCredentials.Username"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-servicenowconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-servicenowconnectorprofileproperties.html#cfn-appflow-connectorprofile-servicenowconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.SingularConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-singularconnectorprofilecredentials.html",
      "Properties": {
        "ApiKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-singularconnectorprofilecredentials.html#cfn-appflow-connectorprofile-singularconnectorprofilecredentials-apikey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SingularConnectorProfileCredentials.ApiKey"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-slackconnectorprofilecredentials.html",
      "Properties": {
        "AccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-slackconnectorprofilecredentials.html#cfn-appflow-connectorprofile-slackconnectorprofilecredentials-accesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileCredentials.AccessToken"
          }
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-slackconnectorprofilecredentials.html#cfn-appflow-connectorprofile-slackconnectorprofilecredentials-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileCredentials.ClientId"
          }
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-slackconnectorprofilecredentials.html#cfn-appflow-connectorprofile-slackconnectorprofilecredentials-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileCredentials.ClientSecret"
          }
        },
        "ConnectorOAuthRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-slackconnectorprofilecredentials.html#cfn-appflow-connectorprofile-slackconnectorprofilecredentials-connectoroauthrequest",
          "Required": false,
          "Type": "ConnectorOAuthRequest",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-slackconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-slackconnectorprofileproperties.html#cfn-appflow-connectorprofile-slackconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofilecredentials.html",
      "Properties": {
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofilecredentials.html#cfn-appflow-connectorprofile-snowflakeconnectorprofilecredentials-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileCredentials.Password"
          }
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofilecredentials.html#cfn-appflow-connectorprofile-snowflakeconnectorprofilecredentials-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileCredentials.Username"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html",
      "Properties": {
        "AccountName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html#cfn-appflow-connectorprofile-snowflakeconnectorprofileproperties-accountname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.AccountName"
          }
        },
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html#cfn-appflow-connectorprofile-snowflakeconnectorprofileproperties-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html#cfn-appflow-connectorprofile-snowflakeconnectorprofileproperties-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateLinkServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html#cfn-appflow-connectorprofile-snowflakeconnectorprofileproperties-privatelinkservicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.PrivateLinkServiceName"
          }
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html#cfn-appflow-connectorprofile-snowflakeconnectorprofileproperties-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.Region"
          }
        },
        "Stage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html#cfn-appflow-connectorprofile-snowflakeconnectorprofileproperties-stage",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.Stage"
          }
        },
        "Warehouse": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-snowflakeconnectorprofileproperties.html#cfn-appflow-connectorprofile-snowflakeconnectorprofileproperties-warehouse",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.Warehouse"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.TrendmicroConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-trendmicroconnectorprofilecredentials.html",
      "Properties": {
        "ApiSecretKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-trendmicroconnectorprofilecredentials.html#cfn-appflow-connectorprofile-trendmicroconnectorprofilecredentials-apisecretkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.TrendmicroConnectorProfileCredentials.ApiSecretKey"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-veevaconnectorprofilecredentials.html",
      "Properties": {
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-veevaconnectorprofilecredentials.html#cfn-appflow-connectorprofile-veevaconnectorprofilecredentials-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileCredentials.Password"
          }
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-veevaconnectorprofilecredentials.html#cfn-appflow-connectorprofile-veevaconnectorprofilecredentials-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileCredentials.Username"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-veevaconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-veevaconnectorprofileproperties.html#cfn-appflow-connectorprofile-veevaconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-zendeskconnectorprofilecredentials.html",
      "Properties": {
        "AccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-zendeskconnectorprofilecredentials.html#cfn-appflow-connectorprofile-zendeskconnectorprofilecredentials-accesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileCredentials.AccessToken"
          }
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-zendeskconnectorprofilecredentials.html#cfn-appflow-connectorprofile-zendeskconnectorprofilecredentials-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileCredentials.ClientId"
          }
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-zendeskconnectorprofilecredentials.html#cfn-appflow-connectorprofile-zendeskconnectorprofilecredentials-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileCredentials.ClientSecret"
          }
        },
        "ConnectorOAuthRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-zendeskconnectorprofilecredentials.html#cfn-appflow-connectorprofile-zendeskconnectorprofilecredentials-connectoroauthrequest",
          "Required": false,
          "Type": "ConnectorOAuthRequest",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-zendeskconnectorprofileproperties.html",
      "Properties": {
        "InstanceUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-connectorprofile-zendeskconnectorprofileproperties.html#cfn-appflow-connectorprofile-zendeskconnectorprofileproperties-instanceurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileProperties.InstanceUrl"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.AggregationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-aggregationconfig.html",
      "Properties": {
        "AggregationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-aggregationconfig.html#cfn-appflow-flow-aggregationconfig-aggregationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.AggregationConfig.AggregationType"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.AmplitudeSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-amplitudesourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-amplitudesourceproperties.html#cfn-appflow-flow-amplitudesourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.AmplitudeSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.ConnectorOperator": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html",
      "Properties": {
        "Amplitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-amplitude",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Amplitude"
          }
        },
        "Datadog": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-datadog",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Datadog"
          }
        },
        "Dynatrace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-dynatrace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Dynatrace"
          }
        },
        "GoogleAnalytics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-googleanalytics",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.GoogleAnalytics"
          }
        },
        "InforNexus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-infornexus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.InforNexus"
          }
        },
        "Marketo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-marketo",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Marketo"
          }
        },
        "S3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-s3",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.S3"
          }
        },
        "Salesforce": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-salesforce",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Salesforce"
          }
        },
        "ServiceNow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-servicenow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.ServiceNow"
          }
        },
        "Singular": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-singular",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Singular"
          }
        },
        "Slack": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-slack",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Slack"
          }
        },
        "Trendmicro": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-trendmicro",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Trendmicro"
          }
        },
        "Veeva": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-veeva",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Veeva"
          }
        },
        "Zendesk": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-connectoroperator.html#cfn-appflow-flow-connectoroperator-zendesk",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ConnectorOperator.Zendesk"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.DatadogSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-datadogsourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-datadogsourceproperties.html#cfn-appflow-flow-datadogsourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.DatadogSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.DestinationConnectorProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationconnectorproperties.html",
      "Properties": {
        "EventBridge": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationconnectorproperties.html#cfn-appflow-flow-destinationconnectorproperties-eventbridge",
          "Required": false,
          "Type": "EventBridgeDestinationProperties",
          "UpdateType": "Mutable"
        },
        "Redshift": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationconnectorproperties.html#cfn-appflow-flow-destinationconnectorproperties-redshift",
          "Required": false,
          "Type": "RedshiftDestinationProperties",
          "UpdateType": "Mutable"
        },
        "S3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationconnectorproperties.html#cfn-appflow-flow-destinationconnectorproperties-s3",
          "Required": false,
          "Type": "S3DestinationProperties",
          "UpdateType": "Mutable"
        },
        "Salesforce": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationconnectorproperties.html#cfn-appflow-flow-destinationconnectorproperties-salesforce",
          "Required": false,
          "Type": "SalesforceDestinationProperties",
          "UpdateType": "Mutable"
        },
        "Snowflake": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationconnectorproperties.html#cfn-appflow-flow-destinationconnectorproperties-snowflake",
          "Required": false,
          "Type": "SnowflakeDestinationProperties",
          "UpdateType": "Mutable"
        },
        "Upsolver": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationconnectorproperties.html#cfn-appflow-flow-destinationconnectorproperties-upsolver",
          "Required": false,
          "Type": "UpsolverDestinationProperties",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.DestinationFlowConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationflowconfig.html",
      "Properties": {
        "ConnectorProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationflowconfig.html#cfn-appflow-flow-destinationflowconfig-connectorprofilename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.DestinationFlowConfig.ConnectorProfileName"
          }
        },
        "ConnectorType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationflowconfig.html#cfn-appflow-flow-destinationflowconfig-connectortype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.DestinationFlowConfig.ConnectorType"
          }
        },
        "DestinationConnectorProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-destinationflowconfig.html#cfn-appflow-flow-destinationflowconfig-destinationconnectorproperties",
          "Required": true,
          "Type": "DestinationConnectorProperties",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.DynatraceSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-dynatracesourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-dynatracesourceproperties.html#cfn-appflow-flow-dynatracesourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.DynatraceSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.ErrorHandlingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-errorhandlingconfig.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-errorhandlingconfig.html#cfn-appflow-flow-errorhandlingconfig-bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ErrorHandlingConfig.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-errorhandlingconfig.html#cfn-appflow-flow-errorhandlingconfig-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FailOnFirstError": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-errorhandlingconfig.html#cfn-appflow-flow-errorhandlingconfig-failonfirsterror",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.EventBridgeDestinationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-eventbridgedestinationproperties.html",
      "Properties": {
        "ErrorHandlingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-eventbridgedestinationproperties.html#cfn-appflow-flow-eventbridgedestinationproperties-errorhandlingconfig",
          "Required": false,
          "Type": "ErrorHandlingConfig",
          "UpdateType": "Mutable"
        },
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-eventbridgedestinationproperties.html#cfn-appflow-flow-eventbridgedestinationproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.EventBridgeDestinationProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.GoogleAnalyticsSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-googleanalyticssourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-googleanalyticssourceproperties.html#cfn-appflow-flow-googleanalyticssourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.GoogleAnalyticsSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.IdFieldNamesList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-idfieldnameslist.html",
      "Properties": {
        "IdFieldNamesList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-idfieldnameslist.html#cfn-appflow-flow-idfieldnameslist-idfieldnameslist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.IncrementalPullConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-incrementalpullconfig.html",
      "Properties": {
        "DatetimeTypeFieldName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-incrementalpullconfig.html#cfn-appflow-flow-incrementalpullconfig-datetimetypefieldname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.InforNexusSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-infornexussourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-infornexussourceproperties.html#cfn-appflow-flow-infornexussourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.InforNexusSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.MarketoSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-marketosourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-marketosourceproperties.html#cfn-appflow-flow-marketosourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.MarketoSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.PrefixConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-prefixconfig.html",
      "Properties": {
        "PrefixFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-prefixconfig.html#cfn-appflow-flow-prefixconfig-prefixformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.PrefixConfig.PrefixFormat"
          }
        },
        "PrefixType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-prefixconfig.html#cfn-appflow-flow-prefixconfig-prefixtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.PrefixConfig.PrefixType"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.RedshiftDestinationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-redshiftdestinationproperties.html",
      "Properties": {
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-redshiftdestinationproperties.html#cfn-appflow-flow-redshiftdestinationproperties-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ErrorHandlingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-redshiftdestinationproperties.html#cfn-appflow-flow-redshiftdestinationproperties-errorhandlingconfig",
          "Required": false,
          "Type": "ErrorHandlingConfig",
          "UpdateType": "Mutable"
        },
        "IntermediateBucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-redshiftdestinationproperties.html#cfn-appflow-flow-redshiftdestinationproperties-intermediatebucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.RedshiftDestinationProperties.IntermediateBucketName"
          }
        },
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-redshiftdestinationproperties.html#cfn-appflow-flow-redshiftdestinationproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.RedshiftDestinationProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.S3DestinationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3destinationproperties.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3destinationproperties.html#cfn-appflow-flow-s3destinationproperties-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.S3DestinationProperties.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3destinationproperties.html#cfn-appflow-flow-s3destinationproperties-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3OutputFormatConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3destinationproperties.html#cfn-appflow-flow-s3destinationproperties-s3outputformatconfig",
          "Required": false,
          "Type": "S3OutputFormatConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.S3OutputFormatConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3outputformatconfig.html",
      "Properties": {
        "AggregationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3outputformatconfig.html#cfn-appflow-flow-s3outputformatconfig-aggregationconfig",
          "Required": false,
          "Type": "AggregationConfig",
          "UpdateType": "Mutable"
        },
        "FileType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3outputformatconfig.html#cfn-appflow-flow-s3outputformatconfig-filetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.S3OutputFormatConfig.FileType"
          }
        },
        "PrefixConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3outputformatconfig.html#cfn-appflow-flow-s3outputformatconfig-prefixconfig",
          "Required": false,
          "Type": "PrefixConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.S3SourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3sourceproperties.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3sourceproperties.html#cfn-appflow-flow-s3sourceproperties-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.S3SourceProperties.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-s3sourceproperties.html#cfn-appflow-flow-s3sourceproperties-bucketprefix",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.SalesforceDestinationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcedestinationproperties.html",
      "Properties": {
        "ErrorHandlingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcedestinationproperties.html#cfn-appflow-flow-salesforcedestinationproperties-errorhandlingconfig",
          "Required": false,
          "Type": "ErrorHandlingConfig",
          "UpdateType": "Mutable"
        },
        "IdFieldNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcedestinationproperties.html#cfn-appflow-flow-salesforcedestinationproperties-idfieldnames",
          "Required": false,
          "Type": "IdFieldNamesList",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SalesforceDestinationProperties.IdFieldNames"
          }
        },
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcedestinationproperties.html#cfn-appflow-flow-salesforcedestinationproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SalesforceDestinationProperties.Object"
          }
        },
        "WriteOperationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcedestinationproperties.html#cfn-appflow-flow-salesforcedestinationproperties-writeoperationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SalesforceDestinationProperties.WriteOperationType"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.SalesforceSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcesourceproperties.html",
      "Properties": {
        "EnableDynamicFieldUpdate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcesourceproperties.html#cfn-appflow-flow-salesforcesourceproperties-enabledynamicfieldupdate",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeDeletedRecords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcesourceproperties.html#cfn-appflow-flow-salesforcesourceproperties-includedeletedrecords",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-salesforcesourceproperties.html#cfn-appflow-flow-salesforcesourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SalesforceSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.ScheduledTriggerProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-scheduledtriggerproperties.html",
      "Properties": {
        "DataPullMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-scheduledtriggerproperties.html#cfn-appflow-flow-scheduledtriggerproperties-datapullmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ScheduledTriggerProperties.DataPullMode"
          }
        },
        "ScheduleEndTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-scheduledtriggerproperties.html#cfn-appflow-flow-scheduledtriggerproperties-scheduleendtime",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-scheduledtriggerproperties.html#cfn-appflow-flow-scheduledtriggerproperties-scheduleexpression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ScheduledTriggerProperties.ScheduleExpression"
          }
        },
        "ScheduleStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-scheduledtriggerproperties.html#cfn-appflow-flow-scheduledtriggerproperties-schedulestarttime",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-scheduledtriggerproperties.html#cfn-appflow-flow-scheduledtriggerproperties-timezone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.ServiceNowSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-servicenowsourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-servicenowsourceproperties.html#cfn-appflow-flow-servicenowsourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ServiceNowSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.SingularSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-singularsourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-singularsourceproperties.html#cfn-appflow-flow-singularsourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SingularSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.SlackSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-slacksourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-slacksourceproperties.html#cfn-appflow-flow-slacksourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SlackSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.SnowflakeDestinationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-snowflakedestinationproperties.html",
      "Properties": {
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-snowflakedestinationproperties.html#cfn-appflow-flow-snowflakedestinationproperties-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ErrorHandlingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-snowflakedestinationproperties.html#cfn-appflow-flow-snowflakedestinationproperties-errorhandlingconfig",
          "Required": false,
          "Type": "ErrorHandlingConfig",
          "UpdateType": "Mutable"
        },
        "IntermediateBucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-snowflakedestinationproperties.html#cfn-appflow-flow-snowflakedestinationproperties-intermediatebucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SnowflakeDestinationProperties.IntermediateBucketName"
          }
        },
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-snowflakedestinationproperties.html#cfn-appflow-flow-snowflakedestinationproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SnowflakeDestinationProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.SourceConnectorProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html",
      "Properties": {
        "Amplitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-amplitude",
          "Required": false,
          "Type": "AmplitudeSourceProperties",
          "UpdateType": "Mutable"
        },
        "Datadog": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-datadog",
          "Required": false,
          "Type": "DatadogSourceProperties",
          "UpdateType": "Mutable"
        },
        "Dynatrace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-dynatrace",
          "Required": false,
          "Type": "DynatraceSourceProperties",
          "UpdateType": "Mutable"
        },
        "GoogleAnalytics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-googleanalytics",
          "Required": false,
          "Type": "GoogleAnalyticsSourceProperties",
          "UpdateType": "Mutable"
        },
        "InforNexus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-infornexus",
          "Required": false,
          "Type": "InforNexusSourceProperties",
          "UpdateType": "Mutable"
        },
        "Marketo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-marketo",
          "Required": false,
          "Type": "MarketoSourceProperties",
          "UpdateType": "Mutable"
        },
        "S3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-s3",
          "Required": false,
          "Type": "S3SourceProperties",
          "UpdateType": "Mutable"
        },
        "Salesforce": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-salesforce",
          "Required": false,
          "Type": "SalesforceSourceProperties",
          "UpdateType": "Mutable"
        },
        "ServiceNow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-servicenow",
          "Required": false,
          "Type": "ServiceNowSourceProperties",
          "UpdateType": "Mutable"
        },
        "Singular": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-singular",
          "Required": false,
          "Type": "SingularSourceProperties",
          "UpdateType": "Mutable"
        },
        "Slack": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-slack",
          "Required": false,
          "Type": "SlackSourceProperties",
          "UpdateType": "Mutable"
        },
        "Trendmicro": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-trendmicro",
          "Required": false,
          "Type": "TrendmicroSourceProperties",
          "UpdateType": "Mutable"
        },
        "Veeva": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-veeva",
          "Required": false,
          "Type": "VeevaSourceProperties",
          "UpdateType": "Mutable"
        },
        "Zendesk": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceconnectorproperties.html#cfn-appflow-flow-sourceconnectorproperties-zendesk",
          "Required": false,
          "Type": "ZendeskSourceProperties",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.SourceFlowConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceflowconfig.html",
      "Properties": {
        "ConnectorProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceflowconfig.html#cfn-appflow-flow-sourceflowconfig-connectorprofilename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SourceFlowConfig.ConnectorProfileName"
          }
        },
        "ConnectorType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceflowconfig.html#cfn-appflow-flow-sourceflowconfig-connectortype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.SourceFlowConfig.ConnectorType"
          }
        },
        "IncrementalPullConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceflowconfig.html#cfn-appflow-flow-sourceflowconfig-incrementalpullconfig",
          "Required": false,
          "Type": "IncrementalPullConfig",
          "UpdateType": "Mutable"
        },
        "SourceConnectorProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceflowconfig.html#cfn-appflow-flow-sourceflowconfig-sourceconnectorproperties",
          "Required": true,
          "Type": "SourceConnectorProperties",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.Task": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-task.html",
      "Properties": {
        "ConnectorOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-task.html#cfn-appflow-flow-task-connectoroperator",
          "Required": false,
          "Type": "ConnectorOperator",
          "UpdateType": "Mutable"
        },
        "DestinationField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-task.html#cfn-appflow-flow-task-destinationfield",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceFields": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-task.html#cfn-appflow-flow-task-sourcefields",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TaskProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-task.html#cfn-appflow-flow-task-taskproperties",
          "ItemType": "TaskPropertiesObject",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TaskType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-task.html#cfn-appflow-flow-task-tasktype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.Task.TaskType"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.TaskPropertiesObject": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-taskpropertiesobject.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-taskpropertiesobject.html#cfn-appflow-flow-taskpropertiesobject-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.TaskPropertiesObject.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-taskpropertiesobject.html#cfn-appflow-flow-taskpropertiesobject-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.TaskPropertiesObject.Value"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.TrendmicroSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-trendmicrosourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-trendmicrosourceproperties.html#cfn-appflow-flow-trendmicrosourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.TrendmicroSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.TriggerConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-triggerconfig.html",
      "Properties": {
        "TriggerProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-triggerconfig.html#cfn-appflow-flow-triggerconfig-triggerproperties",
          "Required": false,
          "Type": "ScheduledTriggerProperties",
          "UpdateType": "Mutable"
        },
        "TriggerType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-triggerconfig.html#cfn-appflow-flow-triggerconfig-triggertype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.TriggerConfig.TriggerType"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.UpsolverDestinationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolverdestinationproperties.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolverdestinationproperties.html#cfn-appflow-flow-upsolverdestinationproperties-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.UpsolverDestinationProperties.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolverdestinationproperties.html#cfn-appflow-flow-upsolverdestinationproperties-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3OutputFormatConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolverdestinationproperties.html#cfn-appflow-flow-upsolverdestinationproperties-s3outputformatconfig",
          "Required": true,
          "Type": "UpsolverS3OutputFormatConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.UpsolverS3OutputFormatConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolvers3outputformatconfig.html",
      "Properties": {
        "AggregationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolvers3outputformatconfig.html#cfn-appflow-flow-upsolvers3outputformatconfig-aggregationconfig",
          "Required": false,
          "Type": "AggregationConfig",
          "UpdateType": "Mutable"
        },
        "FileType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolvers3outputformatconfig.html#cfn-appflow-flow-upsolvers3outputformatconfig-filetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.UpsolverS3OutputFormatConfig.FileType"
          }
        },
        "PrefixConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-upsolvers3outputformatconfig.html#cfn-appflow-flow-upsolvers3outputformatconfig-prefixconfig",
          "Required": true,
          "Type": "PrefixConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppFlow::Flow.VeevaSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-veevasourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-veevasourceproperties.html#cfn-appflow-flow-veevasourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.VeevaSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppFlow::Flow.ZendeskSourceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-zendesksourceproperties.html",
      "Properties": {
        "Object": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-zendesksourceproperties.html#cfn-appflow-flow-zendesksourceproperties-object",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.ZendeskSourceProperties.Object"
          }
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.GatewayRouteSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutespec.html",
      "Properties": {
        "GrpcRoute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutespec.html#cfn-appmesh-gatewayroute-gatewayroutespec-grpcroute",
          "Required": false,
          "Type": "GrpcGatewayRoute",
          "UpdateType": "Mutable"
        },
        "Http2Route": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutespec.html#cfn-appmesh-gatewayroute-gatewayroutespec-http2route",
          "Required": false,
          "Type": "HttpGatewayRoute",
          "UpdateType": "Mutable"
        },
        "HttpRoute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutespec.html#cfn-appmesh-gatewayroute-gatewayroutespec-httproute",
          "Required": false,
          "Type": "HttpGatewayRoute",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.GatewayRouteTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutetarget.html",
      "Properties": {
        "VirtualService": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutetarget.html#cfn-appmesh-gatewayroute-gatewayroutetarget-virtualservice",
          "Required": true,
          "Type": "GatewayRouteVirtualService",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.GatewayRouteVirtualService": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutevirtualservice.html",
      "Properties": {
        "VirtualServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-gatewayroutevirtualservice.html#cfn-appmesh-gatewayroute-gatewayroutevirtualservice-virtualservicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.GrpcGatewayRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-grpcgatewayroute.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-grpcgatewayroute.html#cfn-appmesh-gatewayroute-grpcgatewayroute-action",
          "Required": true,
          "Type": "GrpcGatewayRouteAction",
          "UpdateType": "Mutable"
        },
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-grpcgatewayroute.html#cfn-appmesh-gatewayroute-grpcgatewayroute-match",
          "Required": true,
          "Type": "GrpcGatewayRouteMatch",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.GrpcGatewayRouteAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-grpcgatewayrouteaction.html",
      "Properties": {
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-grpcgatewayrouteaction.html#cfn-appmesh-gatewayroute-grpcgatewayrouteaction-target",
          "Required": true,
          "Type": "GatewayRouteTarget",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.GrpcGatewayRouteMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-grpcgatewayroutematch.html",
      "Properties": {
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-grpcgatewayroutematch.html#cfn-appmesh-gatewayroute-grpcgatewayroutematch-servicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.HttpGatewayRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-httpgatewayroute.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-httpgatewayroute.html#cfn-appmesh-gatewayroute-httpgatewayroute-action",
          "Required": true,
          "Type": "HttpGatewayRouteAction",
          "UpdateType": "Mutable"
        },
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-httpgatewayroute.html#cfn-appmesh-gatewayroute-httpgatewayroute-match",
          "Required": true,
          "Type": "HttpGatewayRouteMatch",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.HttpGatewayRouteAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-httpgatewayrouteaction.html",
      "Properties": {
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-httpgatewayrouteaction.html#cfn-appmesh-gatewayroute-httpgatewayrouteaction-target",
          "Required": true,
          "Type": "GatewayRouteTarget",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute.HttpGatewayRouteMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-httpgatewayroutematch.html",
      "Properties": {
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-gatewayroute-httpgatewayroutematch.html#cfn-appmesh-gatewayroute-httpgatewayroutematch-prefix",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Mesh.EgressFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html#cfn-appmesh-mesh-egressfilter-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Mesh.MeshSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html",
      "Properties": {
        "EgressFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html#cfn-appmesh-mesh-meshspec-egressfilter",
          "Required": false,
          "Type": "EgressFilter",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.Duration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html",
      "Properties": {
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html#cfn-appmesh-route-duration-unit",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html#cfn-appmesh-route-duration-value",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.GrpcRetryPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html",
      "Properties": {
        "GrpcRetryEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-grpcretryevents",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "HttpRetryEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-httpretryevents",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaxRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-maxretries",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PerRetryTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-perretrytimeout",
          "Required": true,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "TcpRetryEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-tcpretryevents",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.GrpcRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-action",
          "Required": true,
          "Type": "GrpcRouteAction",
          "UpdateType": "Mutable"
        },
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-match",
          "Required": true,
          "Type": "GrpcRouteMatch",
          "UpdateType": "Mutable"
        },
        "RetryPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-retrypolicy",
          "Required": false,
          "Type": "GrpcRetryPolicy",
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-timeout",
          "Required": false,
          "Type": "GrpcTimeout",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.GrpcRouteAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcrouteaction.html",
      "Properties": {
        "WeightedTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcrouteaction.html#cfn-appmesh-route-grpcrouteaction-weightedtargets",
          "ItemType": "WeightedTarget",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.GrpcRouteMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html",
      "Properties": {
        "Metadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html#cfn-appmesh-route-grpcroutematch-metadata",
          "ItemType": "GrpcRouteMetadata",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MethodName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html#cfn-appmesh-route-grpcroutematch-methodname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html#cfn-appmesh-route-grpcroutematch-servicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.GrpcRouteMetadata": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html",
      "Properties": {
        "Invert": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html#cfn-appmesh-route-grpcroutemetadata-invert",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html#cfn-appmesh-route-grpcroutemetadata-match",
          "Required": false,
          "Type": "GrpcRouteMetadataMatchMethod",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html#cfn-appmesh-route-grpcroutemetadata-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.GrpcRouteMetadataMatchMethod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html",
      "Properties": {
        "Exact": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-exact",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Range": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-range",
          "Required": false,
          "Type": "MatchRange",
          "UpdateType": "Mutable"
        },
        "Regex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-regex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Suffix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-suffix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.GrpcTimeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html",
      "Properties": {
        "Idle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html#cfn-appmesh-route-grpctimeout-idle",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "PerRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html#cfn-appmesh-route-grpctimeout-perrequest",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.HeaderMatchMethod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html",
      "Properties": {
        "Exact": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-exact",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Range": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-range",
          "Required": false,
          "Type": "MatchRange",
          "UpdateType": "Mutable"
        },
        "Regex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-regex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Suffix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-suffix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.HttpRetryPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html",
      "Properties": {
        "HttpRetryEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-httpretryevents",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaxRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-maxretries",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PerRetryTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-perretrytimeout",
          "Required": true,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "TcpRetryEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-tcpretryevents",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.HttpRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-action",
          "Required": true,
          "Type": "HttpRouteAction",
          "UpdateType": "Mutable"
        },
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-match",
          "Required": true,
          "Type": "HttpRouteMatch",
          "UpdateType": "Mutable"
        },
        "RetryPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-retrypolicy",
          "Required": false,
          "Type": "HttpRetryPolicy",
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-timeout",
          "Required": false,
          "Type": "HttpTimeout",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.HttpRouteAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html",
      "Properties": {
        "WeightedTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html#cfn-appmesh-route-httprouteaction-weightedtargets",
          "ItemType": "WeightedTarget",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.HttpRouteHeader": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html",
      "Properties": {
        "Invert": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-invert",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-match",
          "Required": false,
          "Type": "HeaderMatchMethod",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.HttpRouteMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html",
      "Properties": {
        "Headers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-headers",
          "ItemType": "HttpRouteHeader",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Method": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-method",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-prefix",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Scheme": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-scheme",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.HttpTimeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html",
      "Properties": {
        "Idle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html#cfn-appmesh-route-httptimeout-idle",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "PerRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html#cfn-appmesh-route-httptimeout-perrequest",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.MatchRange": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html",
      "Properties": {
        "End": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-end",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Start": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-start",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.RouteSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html",
      "Properties": {
        "GrpcRoute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-grpcroute",
          "Required": false,
          "Type": "GrpcRoute",
          "UpdateType": "Mutable"
        },
        "Http2Route": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-http2route",
          "Required": false,
          "Type": "HttpRoute",
          "UpdateType": "Mutable"
        },
        "HttpRoute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-httproute",
          "Required": false,
          "Type": "HttpRoute",
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-priority",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TcpRoute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-tcproute",
          "Required": false,
          "Type": "TcpRoute",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.TcpRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-action",
          "Required": true,
          "Type": "TcpRouteAction",
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-timeout",
          "Required": false,
          "Type": "TcpTimeout",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.TcpRouteAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html",
      "Properties": {
        "WeightedTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html#cfn-appmesh-route-tcprouteaction-weightedtargets",
          "ItemType": "WeightedTarget",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.TcpTimeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcptimeout.html",
      "Properties": {
        "Idle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcptimeout.html#cfn-appmesh-route-tcptimeout-idle",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route.WeightedTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html",
      "Properties": {
        "VirtualNode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-virtualnode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-weight",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.SubjectAlternativeNameMatchers": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-subjectalternativenamematchers.html",
      "Properties": {
        "Exact": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-subjectalternativenamematchers.html#cfn-appmesh-virtualgateway-subjectalternativenamematchers-exact",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.SubjectAlternativeNames": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-subjectalternativenames.html",
      "Properties": {
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-subjectalternativenames.html#cfn-appmesh-virtualgateway-subjectalternativenames-match",
          "Required": true,
          "Type": "SubjectAlternativeNameMatchers",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayAccessLog": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayaccesslog.html",
      "Properties": {
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayaccesslog.html#cfn-appmesh-virtualgateway-virtualgatewayaccesslog-file",
          "Required": false,
          "Type": "VirtualGatewayFileAccessLog",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayBackendDefaults": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaybackenddefaults.html",
      "Properties": {
        "ClientPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaybackenddefaults.html#cfn-appmesh-virtualgateway-virtualgatewaybackenddefaults-clientpolicy",
          "Required": false,
          "Type": "VirtualGatewayClientPolicy",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayClientPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclientpolicy.html",
      "Properties": {
        "TLS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclientpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayclientpolicy-tls",
          "Required": false,
          "Type": "VirtualGatewayClientPolicyTls",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayClientPolicyTls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclientpolicytls.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclientpolicytls.html#cfn-appmesh-virtualgateway-virtualgatewayclientpolicytls-certificate",
          "Required": false,
          "Type": "VirtualGatewayClientTlsCertificate",
          "UpdateType": "Mutable"
        },
        "Enforce": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclientpolicytls.html#cfn-appmesh-virtualgateway-virtualgatewayclientpolicytls-enforce",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclientpolicytls.html#cfn-appmesh-virtualgateway-virtualgatewayclientpolicytls-ports",
          "PrimitiveItemType": "Integer",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Validation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclientpolicytls.html#cfn-appmesh-virtualgateway-virtualgatewayclientpolicytls-validation",
          "Required": true,
          "Type": "VirtualGatewayTlsValidationContext",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayClientTlsCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclienttlscertificate.html",
      "Properties": {
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclienttlscertificate.html#cfn-appmesh-virtualgateway-virtualgatewayclienttlscertificate-file",
          "Required": false,
          "Type": "VirtualGatewayListenerTlsFileCertificate",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayclienttlscertificate.html#cfn-appmesh-virtualgateway-virtualgatewayclienttlscertificate-sds",
          "Required": false,
          "Type": "VirtualGatewayListenerTlsSdsCertificate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayconnectionpool.html",
      "Properties": {
        "GRPC": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayconnectionpool.html#cfn-appmesh-virtualgateway-virtualgatewayconnectionpool-grpc",
          "Required": false,
          "Type": "VirtualGatewayGrpcConnectionPool",
          "UpdateType": "Mutable"
        },
        "HTTP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayconnectionpool.html#cfn-appmesh-virtualgateway-virtualgatewayconnectionpool-http",
          "Required": false,
          "Type": "VirtualGatewayHttpConnectionPool",
          "UpdateType": "Mutable"
        },
        "HTTP2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayconnectionpool.html#cfn-appmesh-virtualgateway-virtualgatewayconnectionpool-http2",
          "Required": false,
          "Type": "VirtualGatewayHttp2ConnectionPool",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayFileAccessLog": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayfileaccesslog.html",
      "Properties": {
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayfileaccesslog.html#cfn-appmesh-virtualgateway-virtualgatewayfileaccesslog-path",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayGrpcConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaygrpcconnectionpool.html",
      "Properties": {
        "MaxRequests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaygrpcconnectionpool.html#cfn-appmesh-virtualgateway-virtualgatewaygrpcconnectionpool-maxrequests",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayHealthCheckPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html",
      "Properties": {
        "HealthyThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy-healthythreshold",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IntervalMillis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy-intervalmillis",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeoutMillis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy-timeoutmillis",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UnhealthyThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy.html#cfn-appmesh-virtualgateway-virtualgatewayhealthcheckpolicy-unhealthythreshold",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayHttp2ConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhttp2connectionpool.html",
      "Properties": {
        "MaxRequests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhttp2connectionpool.html#cfn-appmesh-virtualgateway-virtualgatewayhttp2connectionpool-maxrequests",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayHttpConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhttpconnectionpool.html",
      "Properties": {
        "MaxConnections": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhttpconnectionpool.html#cfn-appmesh-virtualgateway-virtualgatewayhttpconnectionpool-maxconnections",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaxPendingRequests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayhttpconnectionpool.html#cfn-appmesh-virtualgateway-virtualgatewayhttpconnectionpool-maxpendingrequests",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListener": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistener.html",
      "Properties": {
        "ConnectionPool": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistener.html#cfn-appmesh-virtualgateway-virtualgatewaylistener-connectionpool",
          "Required": false,
          "Type": "VirtualGatewayConnectionPool",
          "UpdateType": "Mutable"
        },
        "HealthCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistener.html#cfn-appmesh-virtualgateway-virtualgatewaylistener-healthcheck",
          "Required": false,
          "Type": "VirtualGatewayHealthCheckPolicy",
          "UpdateType": "Mutable"
        },
        "PortMapping": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistener.html#cfn-appmesh-virtualgateway-virtualgatewaylistener-portmapping",
          "Required": true,
          "Type": "VirtualGatewayPortMapping",
          "UpdateType": "Mutable"
        },
        "TLS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistener.html#cfn-appmesh-virtualgateway-virtualgatewaylistener-tls",
          "Required": false,
          "Type": "VirtualGatewayListenerTls",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListenerTls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertls.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertls.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertls-certificate",
          "Required": true,
          "Type": "VirtualGatewayListenerTlsCertificate",
          "UpdateType": "Mutable"
        },
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertls.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertls-mode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Validation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertls.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertls-validation",
          "Required": false,
          "Type": "VirtualGatewayListenerTlsValidationContext",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListenerTlsAcmCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsacmcertificate.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsacmcertificate.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlsacmcertificate-certificatearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListenerTlsCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlscertificate.html",
      "Properties": {
        "ACM": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlscertificate.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlscertificate-acm",
          "Required": false,
          "Type": "VirtualGatewayListenerTlsAcmCertificate",
          "UpdateType": "Mutable"
        },
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlscertificate.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlscertificate-file",
          "Required": false,
          "Type": "VirtualGatewayListenerTlsFileCertificate",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlscertificate.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlscertificate-sds",
          "Required": false,
          "Type": "VirtualGatewayListenerTlsSdsCertificate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListenerTlsFileCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsfilecertificate.html",
      "Properties": {
        "CertificateChain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsfilecertificate.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlsfilecertificate-certificatechain",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsfilecertificate.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlsfilecertificate-privatekey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListenerTlsSdsCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlssdscertificate.html",
      "Properties": {
        "SecretName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlssdscertificate.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlssdscertificate-secretname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListenerTlsValidationContext": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontext.html",
      "Properties": {
        "SubjectAlternativeNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontext.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontext-subjectalternativenames",
          "Required": false,
          "Type": "SubjectAlternativeNames",
          "UpdateType": "Mutable"
        },
        "Trust": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontext.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontext-trust",
          "Required": true,
          "Type": "VirtualGatewayListenerTlsValidationContextTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayListenerTlsValidationContextTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontexttrust.html",
      "Properties": {
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontexttrust.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontexttrust-file",
          "Required": false,
          "Type": "VirtualGatewayTlsValidationContextFileTrust",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontexttrust.html#cfn-appmesh-virtualgateway-virtualgatewaylistenertlsvalidationcontexttrust-sds",
          "Required": false,
          "Type": "VirtualGatewayTlsValidationContextSdsTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayLogging": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylogging.html",
      "Properties": {
        "AccessLog": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylogging.html#cfn-appmesh-virtualgateway-virtualgatewaylogging-accesslog",
          "Required": false,
          "Type": "VirtualGatewayAccessLog",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayPortMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayportmapping.html",
      "Properties": {
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayportmapping.html#cfn-appmesh-virtualgateway-virtualgatewayportmapping-port",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayportmapping.html#cfn-appmesh-virtualgateway-virtualgatewayportmapping-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewaySpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayspec.html",
      "Properties": {
        "BackendDefaults": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayspec.html#cfn-appmesh-virtualgateway-virtualgatewayspec-backenddefaults",
          "Required": false,
          "Type": "VirtualGatewayBackendDefaults",
          "UpdateType": "Mutable"
        },
        "Listeners": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayspec.html#cfn-appmesh-virtualgateway-virtualgatewayspec-listeners",
          "ItemType": "VirtualGatewayListener",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Logging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewayspec.html#cfn-appmesh-virtualgateway-virtualgatewayspec-logging",
          "Required": false,
          "Type": "VirtualGatewayLogging",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayTlsValidationContext": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontext.html",
      "Properties": {
        "SubjectAlternativeNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontext.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontext-subjectalternativenames",
          "Required": false,
          "Type": "SubjectAlternativeNames",
          "UpdateType": "Mutable"
        },
        "Trust": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontext.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontext-trust",
          "Required": true,
          "Type": "VirtualGatewayTlsValidationContextTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayTlsValidationContextAcmTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextacmtrust.html",
      "Properties": {
        "CertificateAuthorityArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextacmtrust.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextacmtrust-certificateauthorityarns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayTlsValidationContextFileTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextfiletrust.html",
      "Properties": {
        "CertificateChain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextfiletrust.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextfiletrust-certificatechain",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayTlsValidationContextSdsTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextsdstrust.html",
      "Properties": {
        "SecretName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextsdstrust.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextsdstrust-secretname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway.VirtualGatewayTlsValidationContextTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontexttrust.html",
      "Properties": {
        "ACM": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontexttrust.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontexttrust-acm",
          "Required": false,
          "Type": "VirtualGatewayTlsValidationContextAcmTrust",
          "UpdateType": "Mutable"
        },
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontexttrust.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontexttrust-file",
          "Required": false,
          "Type": "VirtualGatewayTlsValidationContextFileTrust",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontexttrust.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontexttrust-sds",
          "Required": false,
          "Type": "VirtualGatewayTlsValidationContextSdsTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.AccessLog": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html",
      "Properties": {
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html#cfn-appmesh-virtualnode-accesslog-file",
          "Required": false,
          "Type": "FileAccessLog",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.AwsCloudMapInstanceAttribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.AwsCloudMapServiceDiscovery": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-attributes",
          "ItemType": "AwsCloudMapInstanceAttribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NamespaceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-namespacename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-servicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.Backend": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html",
      "Properties": {
        "VirtualService": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html#cfn-appmesh-virtualnode-backend-virtualservice",
          "Required": false,
          "Type": "VirtualServiceBackend",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.BackendDefaults": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backenddefaults.html",
      "Properties": {
        "ClientPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backenddefaults.html#cfn-appmesh-virtualnode-backenddefaults-clientpolicy",
          "Required": false,
          "Type": "ClientPolicy",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ClientPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicy.html",
      "Properties": {
        "TLS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicy.html#cfn-appmesh-virtualnode-clientpolicy-tls",
          "Required": false,
          "Type": "ClientPolicyTls",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ClientPolicyTls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-certificate",
          "Required": false,
          "Type": "ClientTlsCertificate",
          "UpdateType": "Mutable"
        },
        "Enforce": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-enforce",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-ports",
          "PrimitiveItemType": "Integer",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Validation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-validation",
          "Required": true,
          "Type": "TlsValidationContext",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ClientTlsCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clienttlscertificate.html",
      "Properties": {
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clienttlscertificate.html#cfn-appmesh-virtualnode-clienttlscertificate-file",
          "Required": false,
          "Type": "ListenerTlsFileCertificate",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clienttlscertificate.html#cfn-appmesh-virtualnode-clienttlscertificate-sds",
          "Required": false,
          "Type": "ListenerTlsSdsCertificate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.DnsServiceDiscovery": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html",
      "Properties": {
        "Hostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html#cfn-appmesh-virtualnode-dnsservicediscovery-hostname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.Duration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html",
      "Properties": {
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html#cfn-appmesh-virtualnode-duration-unit",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html#cfn-appmesh-virtualnode-duration-value",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.FileAccessLog": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html",
      "Properties": {
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html#cfn-appmesh-virtualnode-fileaccesslog-path",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.GrpcTimeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html",
      "Properties": {
        "Idle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html#cfn-appmesh-virtualnode-grpctimeout-idle",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "PerRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html#cfn-appmesh-virtualnode-grpctimeout-perrequest",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.HealthCheck": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html",
      "Properties": {
        "HealthyThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-healthythreshold",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IntervalMillis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-intervalmillis",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeoutMillis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-timeoutmillis",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UnhealthyThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-unhealthythreshold",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.HttpTimeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html",
      "Properties": {
        "Idle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html#cfn-appmesh-virtualnode-httptimeout-idle",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "PerRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html#cfn-appmesh-virtualnode-httptimeout-perrequest",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.Listener": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html",
      "Properties": {
        "ConnectionPool": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-connectionpool",
          "Required": false,
          "Type": "VirtualNodeConnectionPool",
          "UpdateType": "Mutable"
        },
        "HealthCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-healthcheck",
          "Required": false,
          "Type": "HealthCheck",
          "UpdateType": "Mutable"
        },
        "OutlierDetection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-outlierdetection",
          "Required": false,
          "Type": "OutlierDetection",
          "UpdateType": "Mutable"
        },
        "PortMapping": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-portmapping",
          "Required": true,
          "Type": "PortMapping",
          "UpdateType": "Mutable"
        },
        "TLS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-tls",
          "Required": false,
          "Type": "ListenerTls",
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-timeout",
          "Required": false,
          "Type": "ListenerTimeout",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTimeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html",
      "Properties": {
        "GRPC": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-grpc",
          "Required": false,
          "Type": "GrpcTimeout",
          "UpdateType": "Mutable"
        },
        "HTTP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-http",
          "Required": false,
          "Type": "HttpTimeout",
          "UpdateType": "Mutable"
        },
        "HTTP2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-http2",
          "Required": false,
          "Type": "HttpTimeout",
          "UpdateType": "Mutable"
        },
        "TCP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-tcp",
          "Required": false,
          "Type": "TcpTimeout",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html#cfn-appmesh-virtualnode-listenertls-certificate",
          "Required": true,
          "Type": "ListenerTlsCertificate",
          "UpdateType": "Mutable"
        },
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html#cfn-appmesh-virtualnode-listenertls-mode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Validation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html#cfn-appmesh-virtualnode-listenertls-validation",
          "Required": false,
          "Type": "ListenerTlsValidationContext",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTlsAcmCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsacmcertificate.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsacmcertificate.html#cfn-appmesh-virtualnode-listenertlsacmcertificate-certificatearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTlsCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html",
      "Properties": {
        "ACM": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html#cfn-appmesh-virtualnode-listenertlscertificate-acm",
          "Required": false,
          "Type": "ListenerTlsAcmCertificate",
          "UpdateType": "Mutable"
        },
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html#cfn-appmesh-virtualnode-listenertlscertificate-file",
          "Required": false,
          "Type": "ListenerTlsFileCertificate",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html#cfn-appmesh-virtualnode-listenertlscertificate-sds",
          "Required": false,
          "Type": "ListenerTlsSdsCertificate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTlsFileCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html",
      "Properties": {
        "CertificateChain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html#cfn-appmesh-virtualnode-listenertlsfilecertificate-certificatechain",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html#cfn-appmesh-virtualnode-listenertlsfilecertificate-privatekey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTlsSdsCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlssdscertificate.html",
      "Properties": {
        "SecretName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlssdscertificate.html#cfn-appmesh-virtualnode-listenertlssdscertificate-secretname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTlsValidationContext": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html",
      "Properties": {
        "SubjectAlternativeNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html#cfn-appmesh-virtualnode-listenertlsvalidationcontext-subjectalternativenames",
          "Required": false,
          "Type": "SubjectAlternativeNames",
          "UpdateType": "Mutable"
        },
        "Trust": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html#cfn-appmesh-virtualnode-listenertlsvalidationcontext-trust",
          "Required": true,
          "Type": "ListenerTlsValidationContextTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ListenerTlsValidationContextTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html",
      "Properties": {
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-listenertlsvalidationcontexttrust-file",
          "Required": false,
          "Type": "TlsValidationContextFileTrust",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-listenertlsvalidationcontexttrust-sds",
          "Required": false,
          "Type": "TlsValidationContextSdsTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.Logging": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html",
      "Properties": {
        "AccessLog": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html#cfn-appmesh-virtualnode-logging-accesslog",
          "Required": false,
          "Type": "AccessLog",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.OutlierDetection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html",
      "Properties": {
        "BaseEjectionDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-baseejectionduration",
          "Required": true,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-interval",
          "Required": true,
          "Type": "Duration",
          "UpdateType": "Mutable"
        },
        "MaxEjectionPercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-maxejectionpercent",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaxServerErrors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-maxservererrors",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.PortMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html",
      "Properties": {
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-port",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.ServiceDiscovery": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html",
      "Properties": {
        "AWSCloudMap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-awscloudmap",
          "Required": false,
          "Type": "AwsCloudMapServiceDiscovery",
          "UpdateType": "Mutable"
        },
        "DNS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-dns",
          "Required": false,
          "Type": "DnsServiceDiscovery",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.SubjectAlternativeNameMatchers": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenamematchers.html",
      "Properties": {
        "Exact": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenamematchers.html#cfn-appmesh-virtualnode-subjectalternativenamematchers-exact",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.SubjectAlternativeNames": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenames.html",
      "Properties": {
        "Match": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenames.html#cfn-appmesh-virtualnode-subjectalternativenames-match",
          "Required": true,
          "Type": "SubjectAlternativeNameMatchers",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.TcpTimeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tcptimeout.html",
      "Properties": {
        "Idle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tcptimeout.html#cfn-appmesh-virtualnode-tcptimeout-idle",
          "Required": false,
          "Type": "Duration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.TlsValidationContext": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html",
      "Properties": {
        "SubjectAlternativeNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html#cfn-appmesh-virtualnode-tlsvalidationcontext-subjectalternativenames",
          "Required": false,
          "Type": "SubjectAlternativeNames",
          "UpdateType": "Mutable"
        },
        "Trust": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html#cfn-appmesh-virtualnode-tlsvalidationcontext-trust",
          "Required": true,
          "Type": "TlsValidationContextTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.TlsValidationContextAcmTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextacmtrust.html",
      "Properties": {
        "CertificateAuthorityArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextacmtrust.html#cfn-appmesh-virtualnode-tlsvalidationcontextacmtrust-certificateauthorityarns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.TlsValidationContextFileTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextfiletrust.html",
      "Properties": {
        "CertificateChain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextfiletrust.html#cfn-appmesh-virtualnode-tlsvalidationcontextfiletrust-certificatechain",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.TlsValidationContextSdsTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextsdstrust.html",
      "Properties": {
        "SecretName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextsdstrust.html#cfn-appmesh-virtualnode-tlsvalidationcontextsdstrust-secretname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.TlsValidationContextTrust": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html",
      "Properties": {
        "ACM": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-tlsvalidationcontexttrust-acm",
          "Required": false,
          "Type": "TlsValidationContextAcmTrust",
          "UpdateType": "Mutable"
        },
        "File": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-tlsvalidationcontexttrust-file",
          "Required": false,
          "Type": "TlsValidationContextFileTrust",
          "UpdateType": "Mutable"
        },
        "SDS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-tlsvalidationcontexttrust-sds",
          "Required": false,
          "Type": "TlsValidationContextSdsTrust",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.VirtualNodeConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html",
      "Properties": {
        "GRPC": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-grpc",
          "Required": false,
          "Type": "VirtualNodeGrpcConnectionPool",
          "UpdateType": "Mutable"
        },
        "HTTP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-http",
          "Required": false,
          "Type": "VirtualNodeHttpConnectionPool",
          "UpdateType": "Mutable"
        },
        "HTTP2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-http2",
          "Required": false,
          "Type": "VirtualNodeHttp2ConnectionPool",
          "UpdateType": "Mutable"
        },
        "TCP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-tcp",
          "Required": false,
          "Type": "VirtualNodeTcpConnectionPool",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.VirtualNodeGrpcConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodegrpcconnectionpool.html",
      "Properties": {
        "MaxRequests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodegrpcconnectionpool.html#cfn-appmesh-virtualnode-virtualnodegrpcconnectionpool-maxrequests",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.VirtualNodeHttp2ConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttp2connectionpool.html",
      "Properties": {
        "MaxRequests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttp2connectionpool.html#cfn-appmesh-virtualnode-virtualnodehttp2connectionpool-maxrequests",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.VirtualNodeHttpConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html",
      "Properties": {
        "MaxConnections": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html#cfn-appmesh-virtualnode-virtualnodehttpconnectionpool-maxconnections",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaxPendingRequests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html#cfn-appmesh-virtualnode-virtualnodehttpconnectionpool-maxpendingrequests",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.VirtualNodeSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html",
      "Properties": {
        "BackendDefaults": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-backenddefaults",
          "Required": false,
          "Type": "BackendDefaults",
          "UpdateType": "Mutable"
        },
        "Backends": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-backends",
          "ItemType": "Backend",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Listeners": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-listeners",
          "ItemType": "Listener",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Logging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-logging",
          "Required": false,
          "Type": "Logging",
          "UpdateType": "Mutable"
        },
        "ServiceDiscovery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-servicediscovery",
          "Required": false,
          "Type": "ServiceDiscovery",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.VirtualNodeTcpConnectionPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodetcpconnectionpool.html",
      "Properties": {
        "MaxConnections": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodetcpconnectionpool.html#cfn-appmesh-virtualnode-virtualnodetcpconnectionpool-maxconnections",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode.VirtualServiceBackend": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html",
      "Properties": {
        "ClientPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html#cfn-appmesh-virtualnode-virtualservicebackend-clientpolicy",
          "Required": false,
          "Type": "ClientPolicy",
          "UpdateType": "Mutable"
        },
        "VirtualServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html#cfn-appmesh-virtualnode-virtualservicebackend-virtualservicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualRouter.PortMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html",
      "Properties": {
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-port",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualRouter.VirtualRouterListener": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html",
      "Properties": {
        "PortMapping": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html#cfn-appmesh-virtualrouter-virtualrouterlistener-portmapping",
          "Required": true,
          "Type": "PortMapping",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualRouter.VirtualRouterSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html",
      "Properties": {
        "Listeners": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html#cfn-appmesh-virtualrouter-virtualrouterspec-listeners",
          "ItemType": "VirtualRouterListener",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualService.VirtualNodeServiceProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html",
      "Properties": {
        "VirtualNodeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html#cfn-appmesh-virtualservice-virtualnodeserviceprovider-virtualnodename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualService.VirtualRouterServiceProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html",
      "Properties": {
        "VirtualRouterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html#cfn-appmesh-virtualservice-virtualrouterserviceprovider-virtualroutername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualService.VirtualServiceProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html",
      "Properties": {
        "VirtualNode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualnode",
          "Required": false,
          "Type": "VirtualNodeServiceProvider",
          "UpdateType": "Mutable"
        },
        "VirtualRouter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualrouter",
          "Required": false,
          "Type": "VirtualRouterServiceProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::VirtualService.VirtualServiceSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html",
      "Properties": {
        "Provider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html#cfn-appmesh-virtualservice-virtualservicespec-provider",
          "Required": false,
          "Type": "VirtualServiceProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::DirectoryConfig.ServiceAccountCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html",
      "Properties": {
        "AccountName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AccountPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountpassword",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Fleet.ComputeCapacity": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html",
      "Properties": {
        "DesiredInstances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html#cfn-appstream-fleet-computecapacity-desiredinstances",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Fleet.DomainJoinInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-domainjoininfo.html",
      "Properties": {
        "DirectoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-domainjoininfo.html#cfn-appstream-fleet-domainjoininfo-directoryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OrganizationalUnitDistinguishedName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-domainjoininfo.html#cfn-appstream-fleet-domainjoininfo-organizationalunitdistinguishedname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Fleet.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-vpcconfig.html#cfn-appstream-fleet-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-vpcconfig.html#cfn-appstream-fleet-vpcconfig-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::ImageBuilder.AccessEndpoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-accessendpoint.html",
      "Properties": {
        "EndpointType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-accessendpoint.html#cfn-appstream-imagebuilder-accessendpoint-endpointtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VpceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-accessendpoint.html#cfn-appstream-imagebuilder-accessendpoint-vpceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::ImageBuilder.DomainJoinInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html",
      "Properties": {
        "DirectoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-directoryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OrganizationalUnitDistinguishedName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-organizationalunitdistinguishedname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::ImageBuilder.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Stack.AccessEndpoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-accessendpoint.html",
      "Properties": {
        "EndpointType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-accessendpoint.html#cfn-appstream-stack-accessendpoint-endpointtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VpceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-accessendpoint.html#cfn-appstream-stack-accessendpoint-vpceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Stack.ApplicationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SettingsGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-settingsgroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Stack.StorageConnector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html",
      "Properties": {
        "ConnectorType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html#cfn-appstream-stack-storageconnector-connectortype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Domains": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html#cfn-appstream-stack-storageconnector-domains",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ResourceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html#cfn-appstream-stack-storageconnector-resourceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Stack.UserSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Permission": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-permission",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.AuthorizationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html",
      "Properties": {
        "AuthorizationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-authorizationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AwsIamConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-awsiamconfig",
          "Required": false,
          "Type": "AwsIamConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.AwsIamConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html",
      "Properties": {
        "SigningRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SigningServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingservicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.DeltaSyncConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html",
      "Properties": {
        "BaseTableTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html#cfn-appsync-datasource-deltasyncconfig-basetablettl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DeltaSyncTableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html#cfn-appsync-datasource-deltasyncconfig-deltasynctablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DeltaSyncTableTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html#cfn-appsync-datasource-deltasyncconfig-deltasynctablettl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.DynamoDBConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html",
      "Properties": {
        "AwsRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-awsregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DeltaSyncConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-deltasyncconfig",
          "Required": false,
          "Type": "DeltaSyncConfig",
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-tablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UseCallerCredentials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-usecallercredentials",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Versioned": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-versioned",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.ElasticsearchConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html",
      "Properties": {
        "AwsRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-awsregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Endpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-endpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.HttpConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html",
      "Properties": {
        "AuthorizationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-authorizationconfig",
          "Required": false,
          "Type": "AuthorizationConfig",
          "UpdateType": "Mutable"
        },
        "Endpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-endpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.LambdaConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html",
      "Properties": {
        "LambdaFunctionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.RdsHttpEndpointConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html",
      "Properties": {
        "AwsRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-awsregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AwsSecretStoreArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-awssecretstorearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DbClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-dbclusteridentifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Schema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-schema",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource.RelationalDatabaseConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html",
      "Properties": {
        "RdsHttpEndpointConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-rdshttpendpointconfig",
          "Required": false,
          "Type": "RdsHttpEndpointConfig",
          "UpdateType": "Mutable"
        },
        "RelationalDatabaseSourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-relationaldatabasesourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::FunctionConfiguration.LambdaConflictHandlerConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-lambdaconflicthandlerconfig.html",
      "Properties": {
        "LambdaConflictHandlerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-lambdaconflicthandlerconfig.html#cfn-appsync-functionconfiguration-lambdaconflicthandlerconfig-lambdaconflicthandlerarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::FunctionConfiguration.SyncConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html",
      "Properties": {
        "ConflictDetection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html#cfn-appsync-functionconfiguration-syncconfig-conflictdetection",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ConflictHandler": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html#cfn-appsync-functionconfiguration-syncconfig-conflicthandler",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LambdaConflictHandlerConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html#cfn-appsync-functionconfiguration-syncconfig-lambdaconflicthandlerconfig",
          "Required": false,
          "Type": "LambdaConflictHandlerConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html",
      "Properties": {
        "AuthenticationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OpenIDConnectConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-openidconnectconfig",
          "Required": false,
          "Type": "OpenIDConnectConfig",
          "UpdateType": "Mutable"
        },
        "UserPoolConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-userpoolconfig",
          "Required": false,
          "Type": "CognitoUserPoolConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProviders": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationproviders.html",
      "ItemType": "AdditionalAuthenticationProvider",
      "Required": false,
      "Type": "List",
      "UpdateType": "Mutable"
    },
    "AWS::AppSync::GraphQLApi.CognitoUserPoolConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html",
      "Properties": {
        "AppIdClientRegex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html#cfn-appsync-graphqlapi-cognitouserpoolconfig-appidclientregex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AwsRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html#cfn-appsync-graphqlapi-cognitouserpoolconfig-awsregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html#cfn-appsync-graphqlapi-cognitouserpoolconfig-userpoolid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::GraphQLApi.LogConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html",
      "Properties": {
        "CloudWatchLogsRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html#cfn-appsync-graphqlapi-logconfig-cloudwatchlogsrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExcludeVerboseContent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html#cfn-appsync-graphqlapi-logconfig-excludeverbosecontent",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FieldLogLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html#cfn-appsync-graphqlapi-logconfig-fieldloglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::GraphQLApi.OpenIDConnectConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html",
      "Properties": {
        "AuthTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-authttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-clientid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IatTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-iatttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Issuer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-issuer",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::GraphQLApi.Tags": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-tags.html",
      "ItemType": "Tag",
      "Required": false,
      "Type": "List",
      "UpdateType": "Mutable"
    },
    "AWS::AppSync::GraphQLApi.UserPoolConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html",
      "Properties": {
        "AppIdClientRegex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-appidclientregex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AwsRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-awsregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-defaultaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-userpoolid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::Resolver.CachingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html",
      "Properties": {
        "CachingKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html#cfn-appsync-resolver-cachingconfig-cachingkeys",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Ttl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html#cfn-appsync-resolver-cachingconfig-ttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::Resolver.LambdaConflictHandlerConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-lambdaconflicthandlerconfig.html",
      "Properties": {
        "LambdaConflictHandlerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-lambdaconflicthandlerconfig.html#cfn-appsync-resolver-lambdaconflicthandlerconfig-lambdaconflicthandlerarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::Resolver.PipelineConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html",
      "Properties": {
        "Functions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html#cfn-appsync-resolver-pipelineconfig-functions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::Resolver.SyncConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html",
      "Properties": {
        "ConflictDetection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html#cfn-appsync-resolver-syncconfig-conflictdetection",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ConflictHandler": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html#cfn-appsync-resolver-syncconfig-conflicthandler",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LambdaConflictHandlerConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html#cfn-appsync-resolver-syncconfig-lambdaconflicthandlerconfig",
          "Required": false,
          "Type": "LambdaConflictHandlerConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalableTarget.ScalableTargetAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html",
      "Properties": {
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-maxcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-mincapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalableTarget.ScheduledAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html",
      "Properties": {
        "EndTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-endtime",
          "PrimitiveType": "Timestamp",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScalableTargetAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scalabletargetaction",
          "Required": false,
          "Type": "ScalableTargetAction",
          "UpdateType": "Mutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-schedule",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ScheduledActionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scheduledactionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-starttime",
          "PrimitiveType": "Timestamp",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalableTarget.SuspendedState": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html",
      "Properties": {
        "DynamicScalingInSuspended": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalinginsuspended",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DynamicScalingOutSuspended": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalingoutsuspended",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScheduledScalingSuspended": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-scheduledscalingsuspended",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html",
      "Properties": {
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-dimensions",
          "DuplicatesAllowed": false,
          "ItemType": "MetricDimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-statistic",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification.Statistic"
          }
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html",
      "Properties": {
        "PredefinedMetricType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification.PredefinedMetricType"
          }
        },
        "ResourceLabel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.StepAdjustment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html",
      "Properties": {
        "MetricIntervalLowerBound": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-metricintervallowerbound",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricIntervalUpperBound": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-metricintervalupperbound",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScalingAdjustment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-scalingadjustment",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html",
      "Properties": {
        "AdjustmentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-adjustmenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Cooldown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-cooldown",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricAggregationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-metricaggregationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinAdjustmentMagnitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-minadjustmentmagnitude",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StepAdjustments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustments",
          "DuplicatesAllowed": false,
          "ItemType": "StepAdjustment",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html",
      "Properties": {
        "CustomizedMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-customizedmetricspecification",
          "Required": false,
          "Type": "CustomizedMetricSpecification",
          "UpdateType": "Mutable"
        },
        "DisableScaleIn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-disablescalein",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PredefinedMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-predefinedmetricspecification",
          "Required": false,
          "Type": "PredefinedMetricSpecification",
          "UpdateType": "Mutable"
        },
        "ScaleInCooldown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleincooldown",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScaleOutCooldown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleoutcooldown",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-targetvalue",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application.Alarm": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarm.html",
      "Properties": {
        "AlarmName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarm.html#cfn-applicationinsights-application-alarm-alarmname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.Alarm.AlarmName"
          }
        },
        "Severity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarm.html#cfn-applicationinsights-application-alarm-severity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.Alarm.Severity"
          }
        }
      }
    },
    "AWS::ApplicationInsights::Application.AlarmMetric": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarmmetric.html",
      "Properties": {
        "AlarmMetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarmmetric.html#cfn-applicationinsights-application-alarmmetric-alarmmetricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application.ComponentConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentconfiguration.html",
      "Properties": {
        "ConfigurationDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentconfiguration.html#cfn-applicationinsights-application-componentconfiguration-configurationdetails",
          "Required": false,
          "Type": "ConfigurationDetails",
          "UpdateType": "Mutable"
        },
        "SubComponentTypeConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentconfiguration.html#cfn-applicationinsights-application-componentconfiguration-subcomponenttypeconfigurations",
          "ItemType": "SubComponentTypeConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application.ComponentMonitoringSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html",
      "Properties": {
        "ComponentARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-componentarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.ComponentARN"
          }
        },
        "ComponentConfigurationMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-componentconfigurationmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.ComponentConfigurationMode"
          }
        },
        "ComponentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-componentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.ComponentName"
          }
        },
        "CustomComponentConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-customcomponentconfiguration",
          "Required": false,
          "Type": "ComponentConfiguration",
          "UpdateType": "Mutable"
        },
        "DefaultOverwriteComponentConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-defaultoverwritecomponentconfiguration",
          "Required": false,
          "Type": "ComponentConfiguration",
          "UpdateType": "Mutable"
        },
        "Tier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-tier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.Tier"
          }
        }
      }
    },
    "AWS::ApplicationInsights::Application.ConfigurationDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html",
      "Properties": {
        "AlarmMetrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-alarmmetrics",
          "ItemType": "AlarmMetric",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Alarms": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-alarms",
          "ItemType": "Alarm",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "JMXPrometheusExporter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-jmxprometheusexporter",
          "Required": false,
          "Type": "JMXPrometheusExporter",
          "UpdateType": "Mutable"
        },
        "Logs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-logs",
          "ItemType": "Log",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "WindowsEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-windowsevents",
          "ItemType": "WindowsEvent",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application.CustomComponent": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-customcomponent.html",
      "Properties": {
        "ComponentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-customcomponent.html#cfn-applicationinsights-application-customcomponent-componentname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.CustomComponent.ComponentName"
          }
        },
        "ResourceList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-customcomponent.html#cfn-applicationinsights-application-customcomponent-resourcelist",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.CustomComponent.ResourceList"
          }
        }
      }
    },
    "AWS::ApplicationInsights::Application.JMXPrometheusExporter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-jmxprometheusexporter.html",
      "Properties": {
        "HostPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-jmxprometheusexporter.html#cfn-applicationinsights-application-jmxprometheusexporter-hostport",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JMXURL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-jmxprometheusexporter.html#cfn-applicationinsights-application-jmxprometheusexporter-jmxurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrometheusPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-jmxprometheusexporter.html#cfn-applicationinsights-application-jmxprometheusexporter-prometheusport",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application.Log": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html",
      "Properties": {
        "Encoding": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-encoding",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.Log.Encoding"
          }
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-loggroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.Log.LogGroupName"
          }
        },
        "LogPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-logpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.Log.LogPath"
          }
        },
        "LogType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-logtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.Log.LogType"
          }
        },
        "PatternSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-patternset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.Log.PatternSet"
          }
        }
      }
    },
    "AWS::ApplicationInsights::Application.LogPattern": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html",
      "Properties": {
        "Pattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html#cfn-applicationinsights-application-logpattern-pattern",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.LogPattern.Pattern"
          }
        },
        "PatternName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html#cfn-applicationinsights-application-logpattern-patternname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.LogPattern.PatternName"
          }
        },
        "Rank": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html#cfn-applicationinsights-application-logpattern-rank",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application.LogPatternSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpatternset.html",
      "Properties": {
        "LogPatterns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpatternset.html#cfn-applicationinsights-application-logpatternset-logpatterns",
          "ItemType": "LogPattern",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PatternSetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpatternset.html#cfn-applicationinsights-application-logpatternset-patternsetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.LogPatternSet.PatternSetName"
          }
        }
      }
    },
    "AWS::ApplicationInsights::Application.SubComponentConfigurationDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html",
      "Properties": {
        "AlarmMetrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html#cfn-applicationinsights-application-subcomponentconfigurationdetails-alarmmetrics",
          "ItemType": "AlarmMetric",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Logs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html#cfn-applicationinsights-application-subcomponentconfigurationdetails-logs",
          "ItemType": "Log",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "WindowsEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html#cfn-applicationinsights-application-subcomponentconfigurationdetails-windowsevents",
          "ItemType": "WindowsEvent",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application.SubComponentTypeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponenttypeconfiguration.html",
      "Properties": {
        "SubComponentConfigurationDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponenttypeconfiguration.html#cfn-applicationinsights-application-subcomponenttypeconfiguration-subcomponentconfigurationdetails",
          "Required": true,
          "Type": "SubComponentConfigurationDetails",
          "UpdateType": "Mutable"
        },
        "SubComponentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponenttypeconfiguration.html#cfn-applicationinsights-application-subcomponenttypeconfiguration-subcomponenttype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.SubComponentTypeConfiguration.SubComponentType"
          }
        }
      }
    },
    "AWS::ApplicationInsights::Application.WindowsEvent": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html",
      "Properties": {
        "EventLevels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-eventlevels",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.WindowsEvent.EventLevels"
          }
        },
        "EventName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-eventname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.WindowsEvent.EventName"
          }
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-loggroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.WindowsEvent.LogGroupName"
          }
        },
        "PatternSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-patternset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.WindowsEvent.PatternSet"
          }
        }
      }
    },
    "AWS::Athena::WorkGroup.EncryptionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-encryptionconfiguration.html",
      "Properties": {
        "EncryptionOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-encryptionconfiguration.html#cfn-athena-workgroup-encryptionconfiguration-encryptionoption",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Athena::WorkGroup.EncryptionConfiguration.EncryptionOption"
          }
        },
        "KmsKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-encryptionconfiguration.html#cfn-athena-workgroup-encryptionconfiguration-kmskey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Athena::WorkGroup.EngineVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-engineversion.html",
      "Properties": {
        "EffectiveEngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-engineversion.html#cfn-athena-workgroup-engineversion-effectiveengineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SelectedEngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-engineversion.html#cfn-athena-workgroup-engineversion-selectedengineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Athena::WorkGroup.ResultConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html",
      "Properties": {
        "EncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html#cfn-athena-workgroup-resultconfiguration-encryptionconfiguration",
          "Required": false,
          "Type": "EncryptionConfiguration",
          "UpdateType": "Mutable"
        },
        "OutputLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html#cfn-athena-workgroup-resultconfiguration-outputlocation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Athena::WorkGroup.ResultConfigurationUpdates": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfigurationupdates.html",
      "Properties": {
        "EncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfigurationupdates.html#cfn-athena-workgroup-resultconfigurationupdates-encryptionconfiguration",
          "Required": false,
          "Type": "EncryptionConfiguration",
          "UpdateType": "Mutable"
        },
        "OutputLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfigurationupdates.html#cfn-athena-workgroup-resultconfigurationupdates-outputlocation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveEncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfigurationupdates.html#cfn-athena-workgroup-resultconfigurationupdates-removeencryptionconfiguration",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveOutputLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfigurationupdates.html#cfn-athena-workgroup-resultconfigurationupdates-removeoutputlocation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Athena::WorkGroup.WorkGroupConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html",
      "Properties": {
        "BytesScannedCutoffPerQuery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-bytesscannedcutoffperquery",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnforceWorkGroupConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-enforceworkgroupconfiguration",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-engineversion",
          "Required": false,
          "Type": "EngineVersion",
          "UpdateType": "Mutable"
        },
        "PublishCloudWatchMetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-publishcloudwatchmetricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequesterPaysEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-requesterpaysenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResultConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-resultconfiguration",
          "Required": false,
          "Type": "ResultConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Athena::WorkGroup.WorkGroupConfigurationUpdates": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html",
      "Properties": {
        "BytesScannedCutoffPerQuery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html#cfn-athena-workgroup-workgroupconfigurationupdates-bytesscannedcutoffperquery",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnforceWorkGroupConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html#cfn-athena-workgroup-workgroupconfigurationupdates-enforceworkgroupconfiguration",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html#cfn-athena-workgroup-workgroupconfigurationupdates-engineversion",
          "Required": false,
          "Type": "EngineVersion",
          "UpdateType": "Mutable"
        },
        "PublishCloudWatchMetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html#cfn-athena-workgroup-workgroupconfigurationupdates-publishcloudwatchmetricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveBytesScannedCutoffPerQuery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html#cfn-athena-workgroup-workgroupconfigurationupdates-removebytesscannedcutoffperquery",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequesterPaysEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html#cfn-athena-workgroup-workgroupconfigurationupdates-requesterpaysenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResultConfigurationUpdates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfigurationupdates.html#cfn-athena-workgroup-workgroupconfigurationupdates-resultconfigurationupdates",
          "Required": false,
          "Type": "ResultConfigurationUpdates",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AuditManager::Assessment.AWSAccount": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-awsaccount.html",
      "Properties": {
        "EmailAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-awsaccount.html#cfn-auditmanager-assessment-awsaccount-emailaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.AWSAccount.EmailAddress"
          }
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-awsaccount.html#cfn-auditmanager-assessment-awsaccount-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.AWSAccount.Id"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-awsaccount.html#cfn-auditmanager-assessment-awsaccount-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.AWSAccount.Name"
          }
        }
      }
    },
    "AWS::AuditManager::Assessment.AWSService": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-awsservice.html",
      "Properties": {
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-awsservice.html#cfn-auditmanager-assessment-awsservice-servicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AuditManager::Assessment.AssessmentReportsDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-assessmentreportsdestination.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-assessmentreportsdestination.html#cfn-auditmanager-assessment-assessmentreportsdestination-destination",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-assessmentreportsdestination.html#cfn-auditmanager-assessment-assessmentreportsdestination-destinationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.AssessmentReportsDestination.DestinationType"
          }
        }
      }
    },
    "AWS::AuditManager::Assessment.Delegation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html",
      "Properties": {
        "AssessmentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-assessmentid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.AssessmentId"
          }
        },
        "AssessmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-assessmentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.AssessmentName"
          }
        },
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.Comment"
          }
        },
        "ControlSetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-controlsetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.ControlSetId"
          }
        },
        "CreatedBy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-createdby",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.CreatedBy"
          }
        },
        "CreationTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-creationtime",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.Id"
          }
        },
        "LastUpdated": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-lastupdated",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.RoleArn"
          }
        },
        "RoleType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-roletype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.RoleType"
          }
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-delegation.html#cfn-auditmanager-assessment-delegation-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Delegation.Status"
          }
        }
      }
    },
    "AWS::AuditManager::Assessment.Role": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-role.html",
      "Properties": {
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-role.html#cfn-auditmanager-assessment-role-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Role.RoleArn"
          }
        },
        "RoleType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-role.html#cfn-auditmanager-assessment-role-roletype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Role.RoleType"
          }
        }
      }
    },
    "AWS::AuditManager::Assessment.Scope": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-scope.html",
      "Properties": {
        "AwsAccounts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-scope.html#cfn-auditmanager-assessment-scope-awsaccounts",
          "ItemType": "AWSAccount",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AwsServices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-auditmanager-assessment-scope.html#cfn-auditmanager-assessment-scope-awsservices",
          "ItemType": "AWSService",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.InstancesDistribution": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html",
      "Properties": {
        "OnDemandAllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandallocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OnDemandBaseCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandbasecapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OnDemandPercentageAboveBaseCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandpercentageabovebasecapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpotAllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotallocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpotInstancePools": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotinstancepools",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpotMaxPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotmaxprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.LaunchTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html",
      "Properties": {
        "LaunchTemplateSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-group-launchtemplate",
          "Required": true,
          "Type": "LaunchTemplateSpecification",
          "UpdateType": "Mutable"
        },
        "Overrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-mixedinstancespolicy-overrides",
          "DuplicatesAllowed": false,
          "ItemType": "LaunchTemplateOverrides",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateOverrides": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html",
      "Properties": {
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html#cfn-autoscaling-autoscalinggroup-launchtemplateoverrides-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchTemplateSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html#cfn-autoscaling-autoscalinggroup-launchtemplateoverrides-launchtemplatespecification",
          "Required": false,
          "Type": "LaunchTemplateSpecification",
          "UpdateType": "Mutable"
        },
        "WeightedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html#cfn-autoscaling-autoscalinggroup-launchtemplateoverrides-weightedcapacity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html",
      "Properties": {
        "LaunchTemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.LifecycleHookSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html",
      "Properties": {
        "DefaultResult": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-defaultresult",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::LifecycleHook.DefaultResult"
          }
        },
        "HeartbeatTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-heartbeattimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LifecycleHookName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-lifecyclehookname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LifecycleTransition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-lifecycletransition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::LifecycleHook.LifecycleTransition"
          }
        },
        "NotificationMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-notificationmetadata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotificationTargetARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-notificationtargetarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.MetricsCollection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html",
      "Properties": {
        "Granularity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-granularity",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Metrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-metrics",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.MixedInstancesPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html",
      "Properties": {
        "InstancesDistribution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-instancesdistribution",
          "Required": false,
          "Type": "InstancesDistribution",
          "UpdateType": "Mutable"
        },
        "LaunchTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-launchtemplate",
          "Required": true,
          "Type": "LaunchTemplate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.NotificationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html",
      "Properties": {
        "NotificationTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-as-group-notificationconfigurations-notificationtypes",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TopicARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-autoscaling-autoscalinggroup-notificationconfigurations-topicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup.TagProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PropagateAtLaunch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-PropagateAtLaunch",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::LaunchConfiguration.BlockDevice": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html",
      "Properties": {
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-deleteonterm",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-snapshotid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsVolumeType"
          }
        }
      }
    },
    "AWS::AutoScaling::LaunchConfiguration.BlockDeviceMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html",
      "Properties": {
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-devicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Ebs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-ebs",
          "Required": false,
          "Type": "BlockDevice",
          "UpdateType": "Mutable"
        },
        "NoDevice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-nodevice",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VirtualName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-virtualname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::LaunchConfiguration.MetadataOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-launchconfig-metadataoptions.html",
      "Properties": {
        "HttpEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-launchconfig-metadataoptions.html#cfn-autoscaling-launchconfig-metadataoptions-httpendpoint",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpPutResponseHopLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-launchconfig-metadataoptions.html#cfn-autoscaling-launchconfig-metadataoptions-httpputresponsehoplimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpTokens": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-launchconfig-metadataoptions.html#cfn-autoscaling-launchconfig-metadataoptions-httptokens",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html",
      "Properties": {
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-dimensions",
          "DuplicatesAllowed": false,
          "ItemType": "MetricDimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-statistic",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification.Statistic"
          }
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::ScalingPolicy.MetricDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html",
      "Properties": {
        "PredefinedMetricType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification.PredefinedMetricType"
          }
        },
        "ResourceLabel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::ScalingPolicy.StepAdjustment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html",
      "Properties": {
        "MetricIntervalLowerBound": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-metricintervallowerbound",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricIntervalUpperBound": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-metricintervalupperbound",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScalingAdjustment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-scalingadjustment",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::ScalingPolicy.TargetTrackingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html",
      "Properties": {
        "CustomizedMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-customizedmetricspecification",
          "Required": false,
          "Type": "CustomizedMetricSpecification",
          "UpdateType": "Mutable"
        },
        "DisableScaleIn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-disablescalein",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PredefinedMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-predefinedmetricspecification",
          "Required": false,
          "Type": "PredefinedMetricSpecification",
          "UpdateType": "Mutable"
        },
        "TargetValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-targetvalue",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.ApplicationSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html",
      "Properties": {
        "CloudFormationStackARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-cloudformationstackarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-tagfilters",
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.CustomizedLoadMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html",
      "Properties": {
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-dimensions",
          "ItemType": "MetricDimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-statistic",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.CustomizedScalingMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html",
      "Properties": {
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-dimensions",
          "ItemType": "MetricDimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-statistic",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification.Statistic"
          }
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.MetricDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.PredefinedLoadMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html",
      "Properties": {
        "PredefinedLoadMetricType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-predefinedloadmetrictype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceLabel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-resourcelabel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.PredefinedScalingMetricSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html",
      "Properties": {
        "PredefinedScalingMetricType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-predefinedscalingmetrictype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification.PredefinedMetricType"
          }
        },
        "ResourceLabel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-resourcelabel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html",
      "Properties": {
        "CustomizedLoadMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-customizedloadmetricspecification",
          "Required": false,
          "Type": "CustomizedLoadMetricSpecification",
          "UpdateType": "Mutable"
        },
        "DisableDynamicScaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-disabledynamicscaling",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-maxcapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-mincapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PredefinedLoadMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predefinedloadmetricspecification",
          "Required": false,
          "Type": "PredefinedLoadMetricSpecification",
          "UpdateType": "Mutable"
        },
        "PredictiveScalingMaxCapacityBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predictivescalingmaxcapacitybehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.PredictiveScalingMaxCapacityBehavior"
          }
        },
        "PredictiveScalingMaxCapacityBuffer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predictivescalingmaxcapacitybuffer",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PredictiveScalingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predictivescalingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.PredictiveScalingMode"
          }
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-resourceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ScalableDimension": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-scalabledimension",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.ScalableDimension"
          }
        },
        "ScalingPolicyUpdateBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-scalingpolicyupdatebehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScheduledActionBufferTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-scheduledactionbuffertime",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceNamespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-servicenamespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.ServiceNamespace"
          }
        },
        "TargetTrackingConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-targettrackingconfigurations",
          "ItemType": "TargetTrackingConfiguration",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.TagFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan.TargetTrackingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html",
      "Properties": {
        "CustomizedScalingMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-customizedscalingmetricspecification",
          "Required": false,
          "Type": "CustomizedScalingMetricSpecification",
          "UpdateType": "Mutable"
        },
        "DisableScaleIn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-disablescalein",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EstimatedInstanceWarmup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-estimatedinstancewarmup",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PredefinedScalingMetricSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-predefinedscalingmetricspecification",
          "Required": false,
          "Type": "PredefinedScalingMetricSpecification",
          "UpdateType": "Mutable"
        },
        "ScaleInCooldown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-scaleincooldown",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScaleOutCooldown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-scaleoutcooldown",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-targetvalue",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupPlan.AdvancedBackupSettingResourceType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-advancedbackupsettingresourcetype.html",
      "Properties": {
        "BackupOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-advancedbackupsettingresourcetype.html#cfn-backup-backupplan-advancedbackupsettingresourcetype-backupoptions",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-advancedbackupsettingresourcetype.html#cfn-backup-backupplan-advancedbackupsettingresourcetype-resourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupPlan.BackupPlanResourceType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html",
      "Properties": {
        "AdvancedBackupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-advancedbackupsettings",
          "DuplicatesAllowed": true,
          "ItemType": "AdvancedBackupSettingResourceType",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "BackupPlanName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "BackupPlanRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanrule",
          "DuplicatesAllowed": true,
          "ItemType": "BackupRuleResourceType",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupPlan.BackupRuleResourceType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html",
      "Properties": {
        "CompletionWindowMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-completionwindowminutes",
          "PrimitiveType": "Long",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CopyActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-copyactions",
          "DuplicatesAllowed": true,
          "ItemType": "CopyActionResourceType",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Lifecycle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-lifecycle",
          "Required": false,
          "Type": "LifecycleResourceType",
          "UpdateType": "Mutable"
        },
        "RecoveryPointTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-recoverypointtags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "RuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-rulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-scheduleexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartWindowMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-startwindowminutes",
          "PrimitiveType": "Long",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetBackupVault": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-targetbackupvault",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Backup::BackupVault.BackupVaultName"
          }
        }
      }
    },
    "AWS::Backup::BackupPlan.CopyActionResourceType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-copyactionresourcetype.html",
      "Properties": {
        "DestinationBackupVaultArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-copyactionresourcetype.html#cfn-backup-backupplan-copyactionresourcetype-destinationbackupvaultarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Lifecycle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-copyactionresourcetype.html#cfn-backup-backupplan-copyactionresourcetype-lifecycle",
          "Required": false,
          "Type": "LifecycleResourceType",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupPlan.LifecycleResourceType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html",
      "Properties": {
        "DeleteAfterDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-deleteafterdays",
          "PrimitiveType": "Long",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MoveToColdStorageAfterDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-movetocoldstorageafterdays",
          "PrimitiveType": "Long",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupSelection.BackupSelectionResourceType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html",
      "Properties": {
        "IamRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-iamrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "ListOfTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-listoftags",
          "ItemType": "ConditionResourceType",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Resources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-resources",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SelectionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-selectionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupSelection.ConditionResourceType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html",
      "Properties": {
        "ConditionKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ConditionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditiontype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ConditionValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionvalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupVault.NotificationObjectType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html",
      "Properties": {
        "BackupVaultEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-backupvaultevents",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SNSTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-snstopicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::ComputeEnvironment.ComputeResources": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-allocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BidPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-bidpercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DesiredvCpus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-desiredvcpus",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ec2Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2configuration",
          "ItemType": "Ec2ConfigurationObject",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Ec2KeyPair": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2keypair",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ImageId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-imageid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancerole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::InstanceProfile.NameOrArn"
          }
        },
        "InstanceTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancetypes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "LaunchTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-launchtemplate",
          "Required": false,
          "Type": "LaunchTemplateSpecification",
          "UpdateType": "Immutable"
        },
        "MaxvCpus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-maxvcpus",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinvCpus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-minvcpus",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PlacementGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-placementgroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SpotIamFleetRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-spotiamfleetrole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Batch::ComputeEnvironment.Ec2ConfigurationObject": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-ec2configurationobject.html",
      "Properties": {
        "ImageIdOverride": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-ec2configurationobject.html#cfn-batch-computeenvironment-ec2configurationobject-imageidoverride",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ImageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-ec2configurationobject.html#cfn-batch-computeenvironment-ec2configurationobject-imagetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Batch::ComputeEnvironment.LaunchTemplateSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html",
      "Properties": {
        "LaunchTemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LaunchTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.ContainerProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html",
      "Properties": {
        "Command": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-command",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-environment",
          "ItemType": "Environment",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-executionrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FargatePlatformConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-fargateplatformconfiguration",
          "Required": false,
          "Type": "FargatePlatformConfiguration",
          "UpdateType": "Mutable"
        },
        "Image": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-image",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JobRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-jobrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LinuxParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-linuxparameters",
          "Required": false,
          "Type": "LinuxParameters",
          "UpdateType": "Mutable"
        },
        "LogConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-logconfiguration",
          "Required": false,
          "Type": "LogConfiguration",
          "UpdateType": "Mutable"
        },
        "Memory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-memory",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MountPoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-mountpoints",
          "ItemType": "MountPoints",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NetworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-networkconfiguration",
          "Required": false,
          "Type": "NetworkConfiguration",
          "UpdateType": "Mutable"
        },
        "Privileged": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-privileged",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReadonlyRootFilesystem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-readonlyrootfilesystem",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceRequirements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-resourcerequirements",
          "ItemType": "ResourceRequirement",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Secrets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-secrets",
          "ItemType": "Secret",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Ulimits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-ulimits",
          "ItemType": "Ulimit",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "User": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-user",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Vcpus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-vcpus",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Volumes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-volumes",
          "ItemType": "Volumes",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.Device": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html",
      "Properties": {
        "ContainerPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html#cfn-batch-jobdefinition-device-containerpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html#cfn-batch-jobdefinition-device-hostpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Permissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html#cfn-batch-jobdefinition-device-permissions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.EvaluateOnExit": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-evaluateonexit.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-evaluateonexit.html#cfn-batch-jobdefinition-evaluateonexit-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OnExitCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-evaluateonexit.html#cfn-batch-jobdefinition-evaluateonexit-onexitcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OnReason": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-evaluateonexit.html#cfn-batch-jobdefinition-evaluateonexit-onreason",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OnStatusReason": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-evaluateonexit.html#cfn-batch-jobdefinition-evaluateonexit-onstatusreason",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.FargatePlatformConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-fargateplatformconfiguration.html",
      "Properties": {
        "PlatformVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-fargateplatformconfiguration.html#cfn-batch-jobdefinition-containerproperties-fargateplatformconfiguration-platformversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.LinuxParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html",
      "Properties": {
        "Devices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-devices",
          "ItemType": "Device",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InitProcessEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-initprocessenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxSwap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-maxswap",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SharedMemorySize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-sharedmemorysize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Swappiness": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-swappiness",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tmpfs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-tmpfs",
          "ItemType": "Tmpfs",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.LogConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html",
      "Properties": {
        "LogDriver": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html#cfn-batch-jobdefinition-containerproperties-logconfiguration-logdriver",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Options": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html#cfn-batch-jobdefinition-containerproperties-logconfiguration-options",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html#cfn-batch-jobdefinition-containerproperties-logconfiguration-secretoptions",
          "ItemType": "Secret",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.MountPoints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html",
      "Properties": {
        "ContainerPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html#cfn-batch-jobdefinition-mountpoints-containerpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReadOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html#cfn-batch-jobdefinition-mountpoints-readonly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceVolume": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html#cfn-batch-jobdefinition-mountpoints-sourcevolume",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.NetworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-networkconfiguration.html",
      "Properties": {
        "AssignPublicIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-networkconfiguration.html#cfn-batch-jobdefinition-containerproperties-networkconfiguration-assignpublicip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.NodeProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html",
      "Properties": {
        "MainNode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-mainnode",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "NodeRangeProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-noderangeproperties",
          "ItemType": "NodeRangeProperty",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NumNodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-numnodes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.NodeRangeProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html",
      "Properties": {
        "Container": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-container",
          "Required": false,
          "Type": "ContainerProperties",
          "UpdateType": "Mutable"
        },
        "TargetNodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-targetnodes",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.ResourceRequirement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.RetryStrategy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html",
      "Properties": {
        "Attempts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html#cfn-batch-jobdefinition-retrystrategy-attempts",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EvaluateOnExit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html#cfn-batch-jobdefinition-retrystrategy-evaluateonexit",
          "ItemType": "EvaluateOnExit",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.Secret": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-secret.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-secret.html#cfn-batch-jobdefinition-secret-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ValueFrom": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-secret.html#cfn-batch-jobdefinition-secret-valuefrom",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.Timeout": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html",
      "Properties": {
        "AttemptDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html#cfn-batch-jobdefinition-timeout-attemptdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.Tmpfs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-tmpfs.html",
      "Properties": {
        "ContainerPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-tmpfs.html#cfn-batch-jobdefinition-tmpfs-containerpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MountOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-tmpfs.html#cfn-batch-jobdefinition-tmpfs-mountoptions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-tmpfs.html#cfn-batch-jobdefinition-tmpfs-size",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.Ulimit": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html",
      "Properties": {
        "HardLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html#cfn-batch-jobdefinition-ulimit-hardlimit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html#cfn-batch-jobdefinition-ulimit-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SoftLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html#cfn-batch-jobdefinition-ulimit-softlimit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.Volumes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html",
      "Properties": {
        "Host": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-host",
          "Required": false,
          "Type": "VolumesHost",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobDefinition.VolumesHost": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html",
      "Properties": {
        "SourcePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html#cfn-batch-jobdefinition-volumeshost-sourcepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobQueue.ComputeEnvironmentOrder": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html",
      "Properties": {
        "ComputeEnvironment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-computeenvironment",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Order": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-order",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Budgets::Budget.BudgetData": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html",
      "Properties": {
        "BudgetLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgetlimit",
          "Required": false,
          "Type": "Spend",
          "UpdateType": "Mutable"
        },
        "BudgetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgetname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BudgetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgettype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Budgets::Budget.BudgetType"
          }
        },
        "CostFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-costfilters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CostTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-costtypes",
          "Required": false,
          "Type": "CostTypes",
          "UpdateType": "Mutable"
        },
        "PlannedBudgetLimits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-plannedbudgetlimits",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TimePeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-timeperiod",
          "Required": false,
          "Type": "TimePeriod",
          "UpdateType": "Mutable"
        },
        "TimeUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-timeunit",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Budgets::Budget.TimeUnit"
          }
        }
      }
    },
    "AWS::Budgets::Budget.CostTypes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html",
      "Properties": {
        "IncludeCredit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includecredit",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeDiscount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includediscount",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeOtherSubscription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includeothersubscription",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeRecurring": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includerecurring",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeRefund": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includerefund",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeSubscription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includesubscription",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeSupport": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includesupport",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeTax": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includetax",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeUpfront": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includeupfront",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UseAmortized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-useamortized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UseBlended": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-useblended",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Budgets::Budget.Notification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Budgets::Budget.ComparisonOperator"
          }
        },
        "NotificationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-notificationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Budgets::Budget.NotificationType"
          }
        },
        "Threshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-threshold",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Budgets::Budget.Threshold"
          }
        },
        "ThresholdType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-thresholdtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Budgets::Budget.ThresholdType"
          }
        }
      }
    },
    "AWS::Budgets::Budget.NotificationWithSubscribers": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html",
      "Properties": {
        "Notification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-notification",
          "Required": true,
          "Type": "Notification",
          "UpdateType": "Mutable"
        },
        "Subscribers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-subscribers",
          "ItemType": "Subscriber",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Budgets::Budget.Spend": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html",
      "Properties": {
        "Amount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html#cfn-budgets-budget-spend-amount",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html#cfn-budgets-budget-spend-unit",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Budgets::Budget.Subscriber": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html",
      "Properties": {
        "Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html#cfn-budgets-budget-subscriber-address",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SubscriptionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html#cfn-budgets-budget-subscriber-subscriptiontype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Budgets::Budget.SubscriptionType"
          }
        }
      }
    },
    "AWS::Budgets::Budget.TimePeriod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html",
      "Properties": {
        "End": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html#cfn-budgets-budget-timeperiod-end",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Start": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html#cfn-budgets-budget-timeperiod-start",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cassandra::Table.BillingMode": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-billingmode.html",
      "Properties": {
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-billingmode.html#cfn-cassandra-table-billingmode-mode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cassandra::Table.BillingMode.Mode"
          }
        },
        "ProvisionedThroughput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-billingmode.html#cfn-cassandra-table-billingmode-provisionedthroughput",
          "Required": false,
          "Type": "ProvisionedThroughput",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cassandra::Table.ClusteringKeyColumn": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-clusteringkeycolumn.html",
      "Properties": {
        "Column": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-clusteringkeycolumn.html#cfn-cassandra-table-clusteringkeycolumn-column",
          "Required": true,
          "Type": "Column",
          "UpdateType": "Immutable"
        },
        "OrderBy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-clusteringkeycolumn.html#cfn-cassandra-table-clusteringkeycolumn-orderby",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Cassandra::Table.ClusteringKeyColumn.OrderBy"
          }
        }
      }
    },
    "AWS::Cassandra::Table.Column": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-column.html",
      "Properties": {
        "ColumnName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-column.html#cfn-cassandra-table-column-columnname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cassandra::Table.Column.ColumnName"
          }
        },
        "ColumnType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-column.html#cfn-cassandra-table-column-columntype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cassandra::Table.ProvisionedThroughput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-provisionedthroughput.html",
      "Properties": {
        "ReadCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-provisionedthroughput.html#cfn-cassandra-table-provisionedthroughput-readcapacityunits",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "WriteCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cassandra-table-provisionedthroughput.html#cfn-cassandra-table-provisionedthroughput-writecapacityunits",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CertificateManager::Certificate.DomainValidationOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html",
      "Properties": {
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoptions-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoption-hostedzoneid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ValidationDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoption-validationdomain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cloud9::EnvironmentEC2.Repository": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html",
      "Properties": {
        "PathComponent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-pathcomponent",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RepositoryUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-repositoryurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFormation::ResourceVersion.LoggingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-resourceversion-loggingconfig.html",
      "Properties": {
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-resourceversion-loggingconfig.html#cfn-cloudformation-resourceversion-loggingconfig-loggroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ResourceVersion.LoggingConfig.LogGroupName"
          }
        },
        "LogRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-resourceversion-loggingconfig.html#cfn-cloudformation-resourceversion-loggingconfig-logrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ResourceVersion.LoggingConfig.LogRoleArn"
          }
        }
      }
    },
    "AWS::CloudFormation::StackSet.AutoDeployment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-autodeployment.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-autodeployment.html#cfn-cloudformation-stackset-autodeployment-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RetainStacksOnAccountRemoval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-autodeployment.html#cfn-cloudformation-stackset-autodeployment-retainstacksonaccountremoval",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFormation::StackSet.DeploymentTargets": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html",
      "Properties": {
        "Accounts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-accounts",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.DeploymentTargets.Accounts"
          }
        },
        "OrganizationalUnitIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-organizationalunitids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.DeploymentTargets.OrganizationalUnitIds"
          }
        }
      }
    },
    "AWS::CloudFormation::StackSet.OperationPreferences": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html",
      "Properties": {
        "FailureToleranceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-failuretolerancecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FailureTolerancePercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-failuretolerancepercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxConcurrentCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-maxconcurrentcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxConcurrentPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-maxconcurrentpercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RegionOrder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-regionorder",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.OperationPreferences.RegionOrder"
          }
        }
      }
    },
    "AWS::CloudFormation::StackSet.Parameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html",
      "Properties": {
        "ParameterKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html#cfn-cloudformation-stackset-parameter-parameterkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ParameterValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html#cfn-cloudformation-stackset-parameter-parametervalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFormation::StackSet.StackInstances": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html",
      "Properties": {
        "DeploymentTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-deploymenttargets",
          "Required": true,
          "Type": "DeploymentTargets",
          "UpdateType": "Mutable"
        },
        "ParameterOverrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-parameteroverrides",
          "DuplicatesAllowed": false,
          "ItemType": "Parameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Regions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-regions",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.StackInstances.Regions"
          }
        }
      }
    },
    "AWS::CloudFront::CachePolicy.CachePolicyConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-defaultttl",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaxTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-maxttl",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-minttl",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ParametersInCacheKeyAndForwardedToOrigin": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-parametersincachekeyandforwardedtoorigin",
          "Required": true,
          "Type": "ParametersInCacheKeyAndForwardedToOrigin",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::CachePolicy.CookiesConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cookiesconfig.html",
      "Properties": {
        "CookieBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cookiesconfig.html#cfn-cloudfront-cachepolicy-cookiesconfig-cookiebehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::CachePolicy.CookiesConfig.CookieBehavior"
          }
        },
        "Cookies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cookiesconfig.html#cfn-cloudfront-cachepolicy-cookiesconfig-cookies",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::CachePolicy.HeadersConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-headersconfig.html",
      "Properties": {
        "HeaderBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-headersconfig.html#cfn-cloudfront-cachepolicy-headersconfig-headerbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::CachePolicy.HeadersConfig.HeaderBehavior"
          }
        },
        "Headers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-headersconfig.html#cfn-cloudfront-cachepolicy-headersconfig-headers",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::CachePolicy.ParametersInCacheKeyAndForwardedToOrigin": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html",
      "Properties": {
        "CookiesConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-cookiesconfig",
          "Required": true,
          "Type": "CookiesConfig",
          "UpdateType": "Mutable"
        },
        "EnableAcceptEncodingBrotli": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-enableacceptencodingbrotli",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableAcceptEncodingGzip": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-enableacceptencodinggzip",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "HeadersConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-headersconfig",
          "Required": true,
          "Type": "HeadersConfig",
          "UpdateType": "Mutable"
        },
        "QueryStringsConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-querystringsconfig",
          "Required": true,
          "Type": "QueryStringsConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::CachePolicy.QueryStringsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-querystringsconfig.html",
      "Properties": {
        "QueryStringBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-querystringsconfig.html#cfn-cloudfront-cachepolicy-querystringsconfig-querystringbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::CachePolicy.QueryStringsConfig.QueryStringBehavior"
          }
        },
        "QueryStrings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-querystringsconfig.html#cfn-cloudfront-cachepolicy-querystringsconfig-querystrings",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::CloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig-comment",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.CacheBehavior": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html",
      "Properties": {
        "AllowedMethods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-allowedmethods",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CachePolicyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-cachepolicyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CachedMethods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-cachedmethods",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Compress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-compress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-defaultttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FieldLevelEncryptionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-fieldlevelencryptionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ForwardedValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-forwardedvalues",
          "Required": false,
          "Type": "ForwardedValues",
          "UpdateType": "Mutable"
        },
        "LambdaFunctionAssociations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-lambdafunctionassociations",
          "ItemType": "LambdaFunctionAssociation",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaxTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-maxttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-minttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OriginRequestPolicyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-originrequestpolicyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PathPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-pathpattern",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RealtimeLogConfigArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-realtimelogconfigarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SmoothStreaming": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-smoothstreaming",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetOriginId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-targetoriginid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TrustedKeyGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-trustedkeygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TrustedSigners": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-trustedsigners",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ViewerProtocolPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-viewerprotocolpolicy",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.ViewerProtocolPolicy"
          }
        }
      }
    },
    "AWS::CloudFront::Distribution.Cookies": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html",
      "Properties": {
        "Forward": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-forward",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "WhitelistedNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-whitelistednames",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.CustomErrorResponse": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html",
      "Properties": {
        "ErrorCachingMinTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-errorcachingminttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ErrorCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-errorcode",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.ErrorCode"
          }
        },
        "ResponseCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-responsecode",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.ResponseCode"
          }
        },
        "ResponsePagePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-responsepagepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.CustomOriginConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html",
      "Properties": {
        "HTTPPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-httpport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HTTPSPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-httpsport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OriginKeepaliveTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originkeepalivetimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OriginProtocolPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originprotocolpolicy",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.OriginProtocolPolicy"
          }
        },
        "OriginReadTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originreadtimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OriginSSLProtocols": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originsslprotocols",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.OriginSSLProtocols"
          }
        }
      }
    },
    "AWS::CloudFront::Distribution.DefaultCacheBehavior": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html",
      "Properties": {
        "AllowedMethods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-allowedmethods",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CachePolicyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-cachepolicyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CachedMethods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-cachedmethods",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Compress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-compress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-defaultttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FieldLevelEncryptionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-fieldlevelencryptionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ForwardedValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-forwardedvalues",
          "Required": false,
          "Type": "ForwardedValues",
          "UpdateType": "Mutable"
        },
        "LambdaFunctionAssociations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-lambdafunctionassociations",
          "ItemType": "LambdaFunctionAssociation",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaxTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-maxttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinTTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-minttl",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OriginRequestPolicyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-originrequestpolicyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RealtimeLogConfigArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-realtimelogconfigarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SmoothStreaming": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-smoothstreaming",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetOriginId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-targetoriginid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TrustedKeyGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-trustedkeygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TrustedSigners": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-trustedsigners",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ViewerProtocolPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-viewerprotocolpolicy",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.ViewerProtocolPolicy"
          }
        }
      }
    },
    "AWS::CloudFront::Distribution.DistributionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html",
      "Properties": {
        "Aliases": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-aliases",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CacheBehaviors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-cachebehaviors",
          "ItemType": "CacheBehavior",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomErrorResponses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-customerrorresponses",
          "ItemType": "CustomErrorResponse",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DefaultCacheBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-defaultcachebehavior",
          "Required": true,
          "Type": "DefaultCacheBehavior",
          "UpdateType": "Mutable"
        },
        "DefaultRootObject": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-defaultrootobject",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "HttpVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-httpversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.HttpVersion"
          }
        },
        "IPV6Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-ipv6enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Logging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-logging",
          "Required": false,
          "Type": "Logging",
          "UpdateType": "Mutable"
        },
        "OriginGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-origingroups",
          "Required": false,
          "Type": "OriginGroups",
          "UpdateType": "Mutable"
        },
        "Origins": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-origins",
          "ItemType": "Origin",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PriceClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-priceclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.PriceClass"
          }
        },
        "Restrictions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions",
          "Required": false,
          "Type": "Restrictions",
          "UpdateType": "Mutable"
        },
        "ViewerCertificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-viewercertificate",
          "Required": false,
          "Type": "ViewerCertificate",
          "UpdateType": "Mutable"
        },
        "WebACLId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-webaclid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.ForwardedValues": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html",
      "Properties": {
        "Cookies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-cookies",
          "Required": false,
          "Type": "Cookies",
          "UpdateType": "Mutable"
        },
        "Headers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-headers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "QueryString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-querystring",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "QueryStringCacheKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-querystringcachekeys",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.GeoRestriction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html",
      "Properties": {
        "Locations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-locations",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.Locations"
          }
        },
        "RestrictionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-restrictiontype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.RestrictionType"
          }
        }
      }
    },
    "AWS::CloudFront::Distribution.LambdaFunctionAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html",
      "Properties": {
        "EventType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-eventtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.EventType"
          }
        },
        "IncludeBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-includebody",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LambdaFunctionARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-lambdafunctionarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.Logging": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IncludeCookies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-includecookies",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.Origin": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html",
      "Properties": {
        "ConnectionAttempts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-connectionattempts",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-connectiontimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomOriginConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-customoriginconfig",
          "Required": false,
          "Type": "CustomOriginConfig",
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OriginCustomHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-origincustomheaders",
          "ItemType": "OriginCustomHeader",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OriginPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-originpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OriginShield": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-originshield",
          "Required": false,
          "Type": "OriginShield",
          "UpdateType": "Mutable"
        },
        "S3OriginConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-s3originconfig",
          "Required": false,
          "Type": "S3OriginConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.OriginCustomHeader": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html",
      "Properties": {
        "HeaderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "HeaderValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headervalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.OriginGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html",
      "Properties": {
        "FailoverCriteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html#cfn-cloudfront-distribution-origingroup-failovercriteria",
          "Required": true,
          "Type": "OriginGroupFailoverCriteria",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html#cfn-cloudfront-distribution-origingroup-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Members": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html#cfn-cloudfront-distribution-origingroup-members",
          "Required": true,
          "Type": "OriginGroupMembers",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.OriginGroupFailoverCriteria": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupfailovercriteria.html",
      "Properties": {
        "StatusCodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupfailovercriteria.html#cfn-cloudfront-distribution-origingroupfailovercriteria-statuscodes",
          "Required": true,
          "Type": "StatusCodes",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.OriginGroupMember": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmember.html",
      "Properties": {
        "OriginId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmember.html#cfn-cloudfront-distribution-origingroupmember-originid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.OriginGroupMembers": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmembers.html",
      "Properties": {
        "Items": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmembers.html#cfn-cloudfront-distribution-origingroupmembers-items",
          "ItemType": "OriginGroupMember",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Quantity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmembers.html#cfn-cloudfront-distribution-origingroupmembers-quantity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.OriginGroups": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroups.html",
      "Properties": {
        "Items": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroups.html#cfn-cloudfront-distribution-origingroups-items",
          "ItemType": "OriginGroup",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Quantity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroups.html#cfn-cloudfront-distribution-origingroups-quantity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.OriginShield": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-originshield.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-originshield.html#cfn-cloudfront-distribution-originshield-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OriginShieldRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-originshield.html#cfn-cloudfront-distribution-originshield-originshieldregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.Restrictions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html",
      "Properties": {
        "GeoRestriction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html#cfn-cloudfront-distribution-restrictions-georestriction",
          "Required": true,
          "Type": "GeoRestriction",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.S3OriginConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html",
      "Properties": {
        "OriginAccessIdentity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html#cfn-cloudfront-distribution-s3originconfig-originaccessidentity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.StatusCodes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-statuscodes.html",
      "Properties": {
        "Items": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-statuscodes.html#cfn-cloudfront-distribution-statuscodes-items",
          "PrimitiveItemType": "Integer",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Quantity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-statuscodes.html#cfn-cloudfront-distribution-statuscodes-quantity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution.ViewerCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html",
      "Properties": {
        "AcmCertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-acmcertificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CloudFrontDefaultCertificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-cloudfrontdefaultcertificate",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IamCertificateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-iamcertificateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinimumProtocolVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-minimumprotocolversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.MinimumProtocolVersion"
          }
        },
        "SslSupportMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-sslsupportmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.SslSupportMethod"
          }
        }
      }
    },
    "AWS::CloudFront::KeyGroup.KeyGroupConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html#cfn-cloudfront-keygroup-keygroupconfig-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Items": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html#cfn-cloudfront-keygroup-keygroupconfig-items",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html#cfn-cloudfront-keygroup-keygroupconfig-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::OriginRequestPolicy.CookiesConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-cookiesconfig.html",
      "Properties": {
        "CookieBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-cookiesconfig.html#cfn-cloudfront-originrequestpolicy-cookiesconfig-cookiebehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::OriginRequestPolicy.CookiesConfig.CookieBehavior"
          }
        },
        "Cookies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-cookiesconfig.html#cfn-cloudfront-originrequestpolicy-cookiesconfig-cookies",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::OriginRequestPolicy.HeadersConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-headersconfig.html",
      "Properties": {
        "HeaderBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-headersconfig.html#cfn-cloudfront-originrequestpolicy-headersconfig-headerbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::OriginRequestPolicy.HeadersConfig.HeaderBehavior"
          }
        },
        "Headers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-headersconfig.html#cfn-cloudfront-originrequestpolicy-headersconfig-headers",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::OriginRequestPolicy.OriginRequestPolicyConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CookiesConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-cookiesconfig",
          "Required": true,
          "Type": "CookiesConfig",
          "UpdateType": "Mutable"
        },
        "HeadersConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-headersconfig",
          "Required": true,
          "Type": "HeadersConfig",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "QueryStringsConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-querystringsconfig",
          "Required": true,
          "Type": "QueryStringsConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::OriginRequestPolicy.QueryStringsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-querystringsconfig.html",
      "Properties": {
        "QueryStringBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-querystringsconfig.html#cfn-cloudfront-originrequestpolicy-querystringsconfig-querystringbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::OriginRequestPolicy.QueryStringsConfig.QueryStringBehavior"
          }
        },
        "QueryStrings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-querystringsconfig.html#cfn-cloudfront-originrequestpolicy-querystringsconfig-querystrings",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::PublicKey.PublicKeyConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html",
      "Properties": {
        "CallerReference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-callerreference",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncodedKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-encodedkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::RealtimeLogConfig.EndPoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-endpoint.html",
      "Properties": {
        "KinesisStreamConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-endpoint.html#cfn-cloudfront-realtimelogconfig-endpoint-kinesisstreamconfig",
          "Required": true,
          "Type": "KinesisStreamConfig",
          "UpdateType": "Mutable"
        },
        "StreamType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-endpoint.html#cfn-cloudfront-realtimelogconfig-endpoint-streamtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::RealtimeLogConfig.KinesisStreamConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-kinesisstreamconfig.html",
      "Properties": {
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-kinesisstreamconfig.html#cfn-cloudfront-realtimelogconfig-kinesisstreamconfig-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StreamArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-kinesisstreamconfig.html#cfn-cloudfront-realtimelogconfig-kinesisstreamconfig-streamarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::StreamingDistribution.Logging": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-prefix",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::StreamingDistribution.S3Origin": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html",
      "Properties": {
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OriginAccessIdentity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::StreamingDistribution.StreamingDistributionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html",
      "Properties": {
        "Aliases": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Logging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging",
          "Required": false,
          "Type": "Logging",
          "UpdateType": "Mutable"
        },
        "PriceClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::Distribution.PriceClass"
          }
        },
        "S3Origin": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin",
          "Required": true,
          "Type": "S3Origin",
          "UpdateType": "Mutable"
        },
        "TrustedSigners": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners",
          "Required": true,
          "Type": "TrustedSigners",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::StreamingDistribution.TrustedSigners": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html",
      "Properties": {
        "AwsAccountNumbers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudTrail::Trail.DataResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudTrail::Trail.DataResourceType"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudTrail::Trail.EventSelector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html",
      "Properties": {
        "DataResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-dataresources",
          "DuplicatesAllowed": false,
          "ItemType": "DataResource",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "IncludeManagementEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-includemanagementevents",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReadWriteType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-readwritetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudTrail::Trail.EventReadWriteType"
          }
        }
      }
    },
    "AWS::CloudWatch::Alarm.Dimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudWatch::Alarm.Metric": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html",
      "Properties": {
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html#cfn-cloudwatch-alarm-metric-dimensions",
          "DuplicatesAllowed": true,
          "ItemType": "Dimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html#cfn-cloudwatch-alarm-metric-metricname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html#cfn-cloudwatch-alarm-metric-namespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudWatch::Alarm.MetricDataQuery": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html",
      "Properties": {
        "Expression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-expression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Label": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-label",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricStat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-metricstat",
          "Required": false,
          "Type": "MetricStat",
          "UpdateType": "Mutable"
        },
        "Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-period",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReturnData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-returndata",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudWatch::Alarm.MetricStat": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html",
      "Properties": {
        "Metric": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-metric",
          "Required": true,
          "Type": "Metric",
          "UpdateType": "Mutable"
        },
        "Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-period",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Stat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-stat",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudWatch::AnomalyDetector.Configuration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html",
      "Properties": {
        "ExcludedTimeRanges": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-excludedtimeranges",
          "ItemType": "Range",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricTimeZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-metrictimezone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudWatch::AnomalyDetector.Dimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CloudWatch::AnomalyDetector.Range": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html",
      "Properties": {
        "EndTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-endtime",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-starttime",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudWatch::InsightRule.Tags": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-insightrule-tags.html",
      "ItemType": "Tag",
      "Required": false,
      "Type": "List",
      "UpdateType": "Mutable"
    },
    "AWS::CloudWatch::MetricStream.MetricStreamFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-metricstream-metricstreamfilter.html",
      "Properties": {
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-metricstream-metricstreamfilter.html#cfn-cloudwatch-metricstream-metricstreamfilter-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::MetricStream.MetricStreamFilter.Namespace"
          }
        }
      }
    },
    "AWS::CodeBuild::Project.Artifacts": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html",
      "Properties": {
        "ArtifactIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-artifactidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncryptionDisabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-encryptiondisabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NamespaceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-namespacetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OverrideArtifactName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-overrideartifactname",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Packaging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-packaging",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.Artifacts.Packaging"
          }
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.Artifacts.Type"
          }
        }
      }
    },
    "AWS::CodeBuild::Project.BatchRestrictions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-batchrestrictions.html",
      "Properties": {
        "ComputeTypesAllowed": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-batchrestrictions.html#cfn-codebuild-project-batchrestrictions-computetypesallowed",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaximumBuildsAllowed": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-batchrestrictions.html#cfn-codebuild-project-batchrestrictions-maximumbuildsallowed",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.BuildStatusConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-buildstatusconfig.html",
      "Properties": {
        "Context": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-buildstatusconfig.html#cfn-codebuild-project-buildstatusconfig-context",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-buildstatusconfig.html#cfn-codebuild-project-buildstatusconfig-targeturl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.CloudWatchLogsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html",
      "Properties": {
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html#cfn-codebuild-project-cloudwatchlogsconfig-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html#cfn-codebuild-project-cloudwatchlogsconfig-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Default::Default.EnabledState"
          }
        },
        "StreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html#cfn-codebuild-project-cloudwatchlogsconfig-streamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-certificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ComputeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-computetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.Environment.ComputeType"
          }
        },
        "EnvironmentVariables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-environmentvariables",
          "ItemType": "EnvironmentVariable",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Image": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-image",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ImagePullCredentialsType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-imagepullcredentialstype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.Environment.ImagePullCredentialsType"
          }
        },
        "PrivilegedMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-privilegedmode",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RegistryCredential": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-registrycredential",
          "Required": false,
          "Type": "RegistryCredential",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.Environment.Type"
          }
        }
      }
    },
    "AWS::CodeBuild::Project.EnvironmentVariable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.FilterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-filtergroup.html",
      "ItemType": "WebhookFilter",
      "Required": false,
      "Type": "List",
      "UpdateType": "Mutable"
    },
    "AWS::CodeBuild::Project.GitSubmodulesConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html",
      "Properties": {
        "FetchSubmodules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html#cfn-codebuild-project-gitsubmodulesconfig-fetchsubmodules",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.LogsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html",
      "Properties": {
        "CloudWatchLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-cloudwatchlogs",
          "Required": false,
          "Type": "CloudWatchLogsConfig",
          "UpdateType": "Mutable"
        },
        "S3Logs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-s3logs",
          "Required": false,
          "Type": "S3LogsConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.ProjectBuildBatchConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectbuildbatchconfig.html",
      "Properties": {
        "CombineArtifacts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectbuildbatchconfig.html#cfn-codebuild-project-projectbuildbatchconfig-combineartifacts",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Restrictions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectbuildbatchconfig.html#cfn-codebuild-project-projectbuildbatchconfig-restrictions",
          "Required": false,
          "Type": "BatchRestrictions",
          "UpdateType": "Mutable"
        },
        "ServiceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectbuildbatchconfig.html#cfn-codebuild-project-projectbuildbatchconfig-servicerole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeoutInMins": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectbuildbatchconfig.html#cfn-codebuild-project-projectbuildbatchconfig-timeoutinmins",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.ProjectCache": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html",
      "Properties": {
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html#cfn-codebuild-project-projectcache-location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Modes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html#cfn-codebuild-project-projectcache-modes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html#cfn-codebuild-project-projectcache-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.ProjectCache.Type"
          }
        }
      }
    },
    "AWS::CodeBuild::Project.ProjectFileSystemLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectfilesystemlocation.html",
      "Properties": {
        "Identifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectfilesystemlocation.html#cfn-codebuild-project-projectfilesystemlocation-identifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectfilesystemlocation.html#cfn-codebuild-project-projectfilesystemlocation-location",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MountOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectfilesystemlocation.html#cfn-codebuild-project-projectfilesystemlocation-mountoptions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MountPoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectfilesystemlocation.html#cfn-codebuild-project-projectfilesystemlocation-mountpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectfilesystemlocation.html#cfn-codebuild-project-projectfilesystemlocation-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.ProjectSourceVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html",
      "Properties": {
        "SourceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceidentifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SourceVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.ProjectTriggers": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html",
      "Properties": {
        "BuildType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-buildtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilterGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-filtergroups",
          "ItemType": "FilterGroup",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Webhook": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-webhook",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.RegistryCredential": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html",
      "Properties": {
        "Credential": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credential",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "CredentialProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credentialprovider",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.S3LogsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html",
      "Properties": {
        "EncryptionDisabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-encryptiondisabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Default::Default.EnabledState"
          }
        }
      }
    },
    "AWS::CodeBuild::Project.Source": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html",
      "Properties": {
        "Auth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-auth",
          "Required": false,
          "Type": "SourceAuth",
          "UpdateType": "Mutable"
        },
        "BuildSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-buildspec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BuildStatusConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-buildstatusconfig",
          "Required": false,
          "Type": "BuildStatusConfig",
          "UpdateType": "Mutable"
        },
        "GitCloneDepth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-gitclonedepth",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GitSubmodulesConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-gitsubmodulesconfig",
          "Required": false,
          "Type": "GitSubmodulesConfig",
          "UpdateType": "Mutable"
        },
        "InsecureSsl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-insecuressl",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReportBuildStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-reportbuildstatus",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-sourceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.Source.Type"
          }
        }
      }
    },
    "AWS::CodeBuild::Project.SourceAuth": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html",
      "Properties": {
        "Resource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-resource",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html#cfn-codebuild-project-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html#cfn-codebuild-project-vpcconfig-subnets",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html#cfn-codebuild-project-vpcconfig-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::CodeBuild::Project.WebhookFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html",
      "Properties": {
        "ExcludeMatchedPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html#cfn-codebuild-project-webhookfilter-excludematchedpattern",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Pattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html#cfn-codebuild-project-webhookfilter-pattern",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html#cfn-codebuild-project-webhookfilter-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::ReportGroup.ReportExportConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-reportexportconfig.html",
      "Properties": {
        "ExportConfigType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-reportexportconfig.html#cfn-codebuild-reportgroup-reportexportconfig-exportconfigtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-reportexportconfig.html#cfn-codebuild-reportgroup-reportexportconfig-s3destination",
          "Required": false,
          "Type": "S3ReportExportConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::ReportGroup.S3ReportExportConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-s3reportexportconfig.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-s3reportexportconfig.html#cfn-codebuild-reportgroup-s3reportexportconfig-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "BucketOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-s3reportexportconfig.html#cfn-codebuild-reportgroup-s3reportexportconfig-bucketowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncryptionDisabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-s3reportexportconfig.html#cfn-codebuild-reportgroup-s3reportexportconfig-encryptiondisabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncryptionKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-s3reportexportconfig.html#cfn-codebuild-reportgroup-s3reportexportconfig-encryptionkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Packaging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-s3reportexportconfig.html#cfn-codebuild-reportgroup-s3reportexportconfig-packaging",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-reportgroup-s3reportexportconfig.html#cfn-codebuild-reportgroup-s3reportexportconfig-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeCommit::Repository.Code": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html",
      "Properties": {
        "BranchName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html#cfn-codecommit-repository-code-branchname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html#cfn-codecommit-repository-code-s3",
          "Required": true,
          "Type": "S3",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeCommit::Repository.RepositoryTrigger": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html",
      "Properties": {
        "Branches": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-branches",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CustomData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-customdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-destinationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Events": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-events",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeCommit::Repository.S3": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html#cfn-codecommit-repository-s3-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html#cfn-codecommit-repository-s3-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html#cfn-codecommit-repository-s3-objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts.Type"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-value",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.Alarm": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html#cfn-codedeploy-deploymentgroup-alarm-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.AlarmConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html",
      "Properties": {
        "Alarms": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-alarms",
          "DuplicatesAllowed": false,
          "ItemType": "Alarm",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IgnorePollAlarmFailure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-ignorepollalarmfailure",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Events": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-events",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration.Events"
          }
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.Deployment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IgnoreApplicationStopFailures": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-ignoreapplicationstopfailures",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Revision": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision",
          "Required": true,
          "Type": "RevisionLocation",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html",
      "Properties": {
        "DeploymentOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymentoption",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle.DeploymentOption"
          }
        },
        "DeploymentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle.DeploymentType"
          }
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.EC2TagFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.EC2TagSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html",
      "Properties": {
        "Ec2TagSetList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html#cfn-codedeploy-deploymentgroup-ec2tagset-ec2tagsetlist",
          "DuplicatesAllowed": false,
          "ItemType": "EC2TagSetListObject",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html",
      "Properties": {
        "Ec2TagGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html#cfn-codedeploy-deploymentgroup-ec2tagsetlistobject-ec2taggroup",
          "DuplicatesAllowed": false,
          "ItemType": "EC2TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.ELBInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html#cfn-codedeploy-deploymentgroup-elbinfo-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.GitHubLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html",
      "Properties": {
        "CommitId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-commitid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Repository": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-repository",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.LoadBalancerInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html",
      "Properties": {
        "ElbInfoList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-elbinfolist",
          "DuplicatesAllowed": false,
          "ItemType": "ELBInfo",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetGroupInfoList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-targetgroupinfolist",
          "DuplicatesAllowed": false,
          "ItemType": "TargetGroupInfo",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html",
      "Properties": {
        "OnPremisesTagSetList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html#cfn-codedeploy-deploymentgroup-onpremisestagset-onpremisestagsetlist",
          "DuplicatesAllowed": false,
          "ItemType": "OnPremisesTagSetListObject",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html",
      "Properties": {
        "OnPremisesTagGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html#cfn-codedeploy-deploymentgroup-onpremisestagsetlistobject-onpremisestaggroup",
          "DuplicatesAllowed": false,
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.RevisionLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html",
      "Properties": {
        "GitHubLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation",
          "Required": false,
          "Type": "GitHubLocation",
          "UpdateType": "Mutable"
        },
        "RevisionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-revisiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location",
          "Required": false,
          "Type": "S3Location",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.S3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "BundleType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-bundletype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ETag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-etag",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.TagFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html#cfn-codedeploy-deploymentgroup-tagfilter-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html#cfn-codedeploy-deploymentgroup-tagfilter-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html#cfn-codedeploy-deploymentgroup-tagfilter-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.TargetGroupInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html#cfn-codedeploy-deploymentgroup-targetgroupinfo-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup.TriggerConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html",
      "Properties": {
        "TriggerEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggerevents",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "WS::CodeDeploy::DeploymentGroup.TriggerConfig.TriggerEvents"
          }
        },
        "TriggerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TriggerTargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggertargetarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeGuruProfiler::ProfilingGroup.Channel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-channel.html",
      "Properties": {
        "channelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-channel.html#cfn-codeguruprofiler-profilinggroup-channel-channelid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeGuruProfiler::ProfilingGroup.Channel.channelId"
          }
        },
        "channelUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-channel.html#cfn-codeguruprofiler-profilinggroup-channel-channeluri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeGuruProfiler::ProfilingGroup.Channel.channelUri"
          }
        }
      }
    },
    "AWS::CodePipeline::CustomActionType.ArtifactDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html",
      "Properties": {
        "MaximumCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-maximumcount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinimumCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-minimumcount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::CustomActionType.ConfigurationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-key",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Queryable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-queryable",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Required": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-required",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Secret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-secret",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodePipeline::CustomActionType.ConfigurationProperties.Type"
          }
        }
      }
    },
    "AWS::CodePipeline::CustomActionType.Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html",
      "Properties": {
        "EntityUrlTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-entityurltemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExecutionUrlTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-executionurltemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RevisionUrlTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-revisionurltemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThirdPartyConfigurationUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-thirdpartyconfigurationurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.ActionDeclaration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html",
      "Properties": {
        "ActionTypeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid",
          "Required": true,
          "Type": "ActionTypeId",
          "UpdateType": "Mutable"
        },
        "Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-configuration",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputArtifacts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts",
          "DuplicatesAllowed": false,
          "ItemType": "InputArtifact",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-actiondeclaration-namespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputArtifacts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts",
          "DuplicatesAllowed": false,
          "ItemType": "OutputArtifact",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RunOrder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-runorder",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.ActionTypeId": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html",
      "Properties": {
        "Category": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-category",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodePipeline::Pipeline.ActionTypeId.Category"
          }
        },
        "Owner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-owner",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodePipeline::Pipeline.ActionTypeId.Owner"
          }
        },
        "Provider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-provider",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.ArtifactStore": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html",
      "Properties": {
        "EncryptionKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey",
          "Required": false,
          "Type": "EncryptionKey",
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-location",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodePipeline::Pipeline.ArtifactStore.Type"
          }
        }
      }
    },
    "AWS::CodePipeline::Pipeline.ArtifactStoreMap": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html",
      "Properties": {
        "ArtifactStore": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-artifactstore",
          "Required": true,
          "Type": "ArtifactStore",
          "UpdateType": "Mutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-region",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.BlockerDeclaration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodePipeline::Pipeline.BlockerDeclaration.Type"
          }
        }
      }
    },
    "AWS::CodePipeline::Pipeline.EncryptionKey": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.InputArtifact": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.OutputArtifact": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.StageDeclaration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-actions",
          "DuplicatesAllowed": false,
          "ItemType": "ActionDeclaration",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Blockers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-blockers",
          "DuplicatesAllowed": false,
          "ItemType": "BlockerDeclaration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline.StageTransition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html",
      "Properties": {
        "Reason": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-reason",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-stagename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Webhook.WebhookAuthConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html",
      "Properties": {
        "AllowedIPRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-allowediprange",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-secrettoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Webhook.WebhookFilterRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html",
      "Properties": {
        "JsonPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-jsonpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MatchEquals": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-matchequals",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeStar::GitHubRepository.Code": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html",
      "Properties": {
        "S3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html#cfn-codestar-githubrepository-code-s3",
          "Required": true,
          "Type": "S3",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeStar::GitHubRepository.S3": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html#cfn-codestar-githubrepository-s3-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html#cfn-codestar-githubrepository-s3-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html#cfn-codestar-githubrepository-s3-objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeStarNotifications::NotificationRule.Target": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestarnotifications-notificationrule-target.html",
      "Properties": {
        "TargetAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestarnotifications-notificationrule-target.html#cfn-codestarnotifications-notificationrule-target-targetaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestarnotifications-notificationrule-target.html#cfn-codestarnotifications-notificationrule-target-targettype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::IdentityPool.CognitoIdentityProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html",
      "Properties": {
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-clientid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProviderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-providername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServerSideTokenCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-serversidetokencheck",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::IdentityPool.CognitoStreams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html",
      "Properties": {
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-streamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamingStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-streamingstatus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Default::Default.EnabledState"
          }
        }
      }
    },
    "AWS::Cognito::IdentityPool.PushSync": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html",
      "Properties": {
        "ApplicationArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-applicationarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::IdentityPoolRoleAttachment.MappingRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html",
      "Properties": {
        "Claim": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-claim",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MatchType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-matchtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::IdentityPoolRoleAttachment.RoleMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html",
      "Properties": {
        "AmbiguousRoleResolution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-ambiguousroleresolution",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdentityProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-identityprovider",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RulesConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration",
          "Required": false,
          "Type": "RulesConfigurationType",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::IdentityPoolRoleAttachment.RulesConfigurationType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html",
      "Properties": {
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html#cfn-cognito-identitypoolroleattachment-rulesconfigurationtype-rules",
          "ItemType": "MappingRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.AccountRecoverySetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-accountrecoverysetting.html",
      "Properties": {
        "RecoveryMechanisms": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-accountrecoverysetting.html#cfn-cognito-userpool-accountrecoverysetting-recoverymechanisms",
          "ItemType": "RecoveryOption",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.AdminCreateUserConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html",
      "Properties": {
        "AllowAdminCreateUserOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-allowadmincreateuseronly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InviteMessageTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-invitemessagetemplate",
          "Required": false,
          "Type": "InviteMessageTemplate",
          "UpdateType": "Mutable"
        },
        "UnusedAccountValidityDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-unusedaccountvaliditydays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.CustomEmailSender": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-customemailsender.html",
      "Properties": {
        "LambdaArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-customemailsender.html#cfn-cognito-userpool-customemailsender-lambdaarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LambdaVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-customemailsender.html#cfn-cognito-userpool-customemailsender-lambdaversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.CustomSMSSender": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-customsmssender.html",
      "Properties": {
        "LambdaArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-customsmssender.html#cfn-cognito-userpool-customsmssender-lambdaarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LambdaVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-customsmssender.html#cfn-cognito-userpool-customsmssender-lambdaversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.DeviceConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html",
      "Properties": {
        "ChallengeRequiredOnNewDevice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-challengerequiredonnewdevice",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceOnlyRememberedOnUserPrompt": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-deviceonlyrememberedonuserprompt",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.EmailConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html",
      "Properties": {
        "ConfigurationSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-configurationset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmailSendingAccount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-emailsendingaccount",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "From": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-from",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplyToEmailAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-replytoemailaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-sourcearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.InviteMessageTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html",
      "Properties": {
        "EmailMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-emailmessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmailSubject": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-emailsubject",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SMSMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-smsmessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.LambdaConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html",
      "Properties": {
        "CreateAuthChallenge": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-createauthchallenge",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomEmailSender": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-customemailsender",
          "Required": false,
          "Type": "CustomEmailSender",
          "UpdateType": "Mutable"
        },
        "CustomMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-custommessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomSMSSender": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-customsmssender",
          "Required": false,
          "Type": "CustomSMSSender",
          "UpdateType": "Mutable"
        },
        "DefineAuthChallenge": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-defineauthchallenge",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KMSKeyID": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PostAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-postauthentication",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PostConfirmation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-postconfirmation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-preauthentication",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreSignUp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-presignup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreTokenGeneration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-pretokengeneration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserMigration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-usermigration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VerifyAuthChallengeResponse": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-verifyauthchallengeresponse",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.NumberAttributeConstraints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html",
      "Properties": {
        "MaxValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-maxvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-minvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.PasswordPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html",
      "Properties": {
        "MinimumLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-minimumlength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequireLowercase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requirelowercase",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequireNumbers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requirenumbers",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequireSymbols": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requiresymbols",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequireUppercase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requireuppercase",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TemporaryPasswordValidityDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-temporarypasswordvaliditydays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.Policies": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html",
      "Properties": {
        "PasswordPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html#cfn-cognito-userpool-policies-passwordpolicy",
          "Required": false,
          "Type": "PasswordPolicy",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.RecoveryOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-recoveryoption.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-recoveryoption.html#cfn-cognito-userpool-recoveryoption-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-recoveryoption.html#cfn-cognito-userpool-recoveryoption-priority",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.SchemaAttribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html",
      "Properties": {
        "AttributeDataType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-attributedatatype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPool.SchemaAttribute.AttributeDataType"
          }
        },
        "DeveloperOnlyAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-developeronlyattribute",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Mutable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-mutable",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumberAttributeConstraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-numberattributeconstraints",
          "Required": false,
          "Type": "NumberAttributeConstraints",
          "UpdateType": "Mutable"
        },
        "Required": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-required",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StringAttributeConstraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-stringattributeconstraints",
          "Required": false,
          "Type": "StringAttributeConstraints",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.SmsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html",
      "Properties": {
        "ExternalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-externalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SnsCallerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-snscallerarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.StringAttributeConstraints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html",
      "Properties": {
        "MaxLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-maxlength",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-minlength",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.UserPoolAddOns": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html",
      "Properties": {
        "AdvancedSecurityMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html#cfn-cognito-userpool-userpooladdons-advancedsecuritymode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.UsernameConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-usernameconfiguration.html",
      "Properties": {
        "CaseSensitive": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-usernameconfiguration.html#cfn-cognito-userpool-usernameconfiguration-casesensitive",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool.VerificationMessageTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html",
      "Properties": {
        "DefaultEmailOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-defaultemailoption",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmailMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailmessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmailMessageByLink": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailmessagebylink",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmailSubject": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailsubject",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmailSubjectByLink": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailsubjectbylink",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SmsMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-smsmessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolClient.AnalyticsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html",
      "Properties": {
        "ApplicationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-applicationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-applicationid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExternalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-externalid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserDataShared": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-userdatashared",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolClient.TokenValidityUnits": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-tokenvalidityunits.html",
      "Properties": {
        "AccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-tokenvalidityunits.html#cfn-cognito-userpoolclient-tokenvalidityunits-accesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-tokenvalidityunits.html#cfn-cognito-userpoolclient-tokenvalidityunits-idtoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RefreshToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-tokenvalidityunits.html#cfn-cognito-userpoolclient-tokenvalidityunits-refreshtoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolDomain.CustomDomainConfigType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html#cfn-cognito-userpooldomain-customdomainconfigtype-certificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolResourceServer.ResourceServerScopeType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html",
      "Properties": {
        "ScopeDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopedescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ScopeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html",
      "Properties": {
        "EventAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-eventaction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Notify": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-notify",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionsType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html",
      "Properties": {
        "HighAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-highaction",
          "Required": false,
          "Type": "AccountTakeoverActionType",
          "UpdateType": "Mutable"
        },
        "LowAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-lowaction",
          "Required": false,
          "Type": "AccountTakeoverActionType",
          "UpdateType": "Mutable"
        },
        "MediumAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-mediumaction",
          "Required": false,
          "Type": "AccountTakeoverActionType",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverRiskConfigurationType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-actions",
          "Required": true,
          "Type": "AccountTakeoverActionsType",
          "UpdateType": "Mutable"
        },
        "NotifyConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-notifyconfiguration",
          "Required": false,
          "Type": "NotifyConfigurationType",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsActionsType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html",
      "Properties": {
        "EventAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype-eventaction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-actions",
          "Required": true,
          "Type": "CompromisedCredentialsActionsType",
          "UpdateType": "Mutable"
        },
        "EventFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-eventfilter",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyConfigurationType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html",
      "Properties": {
        "BlockEmail": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-blockemail",
          "Required": false,
          "Type": "NotifyEmailType",
          "UpdateType": "Mutable"
        },
        "From": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-from",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MfaEmail": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-mfaemail",
          "Required": false,
          "Type": "NotifyEmailType",
          "UpdateType": "Mutable"
        },
        "NoActionEmail": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-noactionemail",
          "Required": false,
          "Type": "NotifyEmailType",
          "UpdateType": "Mutable"
        },
        "ReplyTo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-replyto",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-sourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyEmailType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html",
      "Properties": {
        "HtmlBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-htmlbody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Subject": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-subject",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TextBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-textbody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment.RiskExceptionConfigurationType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html",
      "Properties": {
        "BlockedIPRangeList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-blockediprangelist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SkippedIPRangeList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-skippediprangelist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolUser.AttributeType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigRule.Scope": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html",
      "Properties": {
        "ComplianceResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-complianceresourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ComplianceResourceTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-complianceresourcetypes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigurationRecorder.ResourceTypes"
          }
        },
        "TagKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-tagkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-tagvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigRule.Source": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html",
      "Properties": {
        "Owner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-owner",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigRule.Source.Owner"
          }
        },
        "SourceDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-sourcedetails",
          "DuplicatesAllowed": false,
          "ItemType": "SourceDetail",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-sourceidentifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigRule.SourceDetail": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html",
      "Properties": {
        "EventSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-source-sourcedetail-eventsource",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigRule.SourceDetail.EventSource"
          }
        },
        "MaximumExecutionFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-sourcedetail-maximumexecutionfrequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigRule.MaximumExecutionFrequency"
          }
        },
        "MessageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-source-sourcedetail-messagetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigRule.SourceDetail.MessageType"
          }
        }
      }
    },
    "AWS::Config::ConfigurationAggregator.AccountAggregationSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html",
      "Properties": {
        "AccountIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-accountids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AllAwsRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-allawsregions",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AwsRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-awsregions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigurationAggregator.OrganizationAggregationSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html",
      "Properties": {
        "AllAwsRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-allawsregions",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AwsRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-awsregions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigurationRecorder.RecordingGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html",
      "Properties": {
        "AllSupported": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-allsupported",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeGlobalResourceTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-includeglobalresourcetypes",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-resourcetypes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigurationRecorder.ResourceTypes"
          }
        }
      }
    },
    "AWS::Config::ConformancePack.ConformancePackInputParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-conformancepack-conformancepackinputparameter.html",
      "Properties": {
        "ParameterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-conformancepack-conformancepackinputparameter.html#cfn-config-conformancepack-conformancepackinputparameter-parametername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ParameterValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-conformancepack-conformancepackinputparameter.html#cfn-config-conformancepack-conformancepackinputparameter-parametervalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::DeliveryChannel.ConfigSnapshotDeliveryProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html",
      "Properties": {
        "DeliveryFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties-deliveryfrequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigRule.MaximumExecutionFrequency"
          }
        }
      }
    },
    "AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-inputparameters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LambdaFunctionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-lambdafunctionarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaximumExecutionFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-maximumexecutionfrequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OrganizationConfigRuleTriggerTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-organizationconfigruletriggertypes",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ResourceIdScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-resourceidscope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceTypesScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-resourcetypesscope",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TagKeyScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-tagkeyscope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagValueScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-tagvaluescope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::OrganizationConfigRule.OrganizationManagedRuleMetadata": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-inputparameters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumExecutionFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-maximumexecutionfrequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceIdScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-resourceidscope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceTypesScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-resourcetypesscope",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RuleIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-ruleidentifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TagKeyScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-tagkeyscope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagValueScope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-tagvaluescope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::OrganizationConformancePack.ConformancePackInputParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconformancepack-conformancepackinputparameter.html",
      "Properties": {
        "ParameterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconformancepack-conformancepackinputparameter.html#cfn-config-organizationconformancepack-conformancepackinputparameter-parametername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ParameterValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconformancepack-conformancepackinputparameter.html#cfn-config-organizationconformancepack-conformancepackinputparameter-parametervalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::RemediationConfiguration.ExecutionControls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html",
      "Properties": {
        "SsmControls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html#cfn-config-remediationconfiguration-executioncontrols-ssmcontrols",
          "Required": false,
          "Type": "SsmControls",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::RemediationConfiguration.RemediationParameterValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html",
      "Properties": {
        "ResourceValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-resourcevalue",
          "Required": false,
          "Type": "ResourceValue",
          "UpdateType": "Mutable"
        },
        "StaticValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-staticvalue",
          "Required": false,
          "Type": "StaticValue",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::RemediationConfiguration.ResourceValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html",
      "Properties": {
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html#cfn-config-remediationconfiguration-resourcevalue-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::RemediationConfiguration.SsmControls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html",
      "Properties": {
        "ConcurrentExecutionRatePercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-concurrentexecutionratepercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ErrorPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-errorpercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::RemediationConfiguration.StaticValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html",
      "Properties": {
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html#cfn-config-remediationconfiguration-staticvalue-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DAX::Cluster.SSESpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html",
      "Properties": {
        "SSEEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html#cfn-dax-cluster-ssespecification-sseenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-action.html",
      "Properties": {
        "CrossRegionCopy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-action.html#cfn-dlm-lifecyclepolicy-action-crossregioncopy",
          "ItemType": "CrossRegionCopyAction",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-action.html#cfn-dlm-lifecyclepolicy-action-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.CreateRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html",
      "Properties": {
        "CronExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-cronexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-interval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntervalUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-intervalunit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Times": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-times",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.CrossRegionCopyAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html",
      "Properties": {
        "EncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html#cfn-dlm-lifecyclepolicy-crossregioncopyaction-encryptionconfiguration",
          "Required": true,
          "Type": "EncryptionConfiguration",
          "UpdateType": "Mutable"
        },
        "RetainRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html#cfn-dlm-lifecyclepolicy-crossregioncopyaction-retainrule",
          "Required": false,
          "Type": "CrossRegionCopyRetainRule",
          "UpdateType": "Mutable"
        },
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html#cfn-dlm-lifecyclepolicy-crossregioncopyaction-target",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.CrossRegionCopyRetainRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyretainrule.html",
      "Properties": {
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyretainrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyretainrule-interval",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IntervalUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyretainrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyretainrule-intervalunit",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.CrossRegionCopyRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html",
      "Properties": {
        "CmkArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-cmkarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CopyTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-copytags",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-encrypted",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RetainRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-retainrule",
          "Required": false,
          "Type": "CrossRegionCopyRetainRule",
          "UpdateType": "Mutable"
        },
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-target",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-targetregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.EncryptionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-encryptionconfiguration.html",
      "Properties": {
        "CmkArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-encryptionconfiguration.html#cfn-dlm-lifecyclepolicy-encryptionconfiguration-cmkarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-encryptionconfiguration.html#cfn-dlm-lifecyclepolicy-encryptionconfiguration-encrypted",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.EventParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html",
      "Properties": {
        "DescriptionRegex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html#cfn-dlm-lifecyclepolicy-eventparameters-descriptionregex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html#cfn-dlm-lifecyclepolicy-eventparameters-eventtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SnapshotOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html#cfn-dlm-lifecyclepolicy-eventparameters-snapshotowner",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.EventSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventsource.html",
      "Properties": {
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventsource.html#cfn-dlm-lifecyclepolicy-eventsource-parameters",
          "Required": false,
          "Type": "EventParameters",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventsource.html#cfn-dlm-lifecyclepolicy-eventsource-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.FastRestoreRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html",
      "Properties": {
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-availabilityzones",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-count",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-interval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntervalUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-intervalunit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.Parameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html",
      "Properties": {
        "ExcludeBootVolume": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-excludebootvolume",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NoReboot": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-noreboot",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.PolicyDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-actions",
          "ItemType": "Action",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EventSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-eventsource",
          "Required": false,
          "Type": "EventSource",
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-parameters",
          "Required": false,
          "Type": "Parameters",
          "UpdateType": "Mutable"
        },
        "PolicyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-policytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceLocations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcelocations",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ResourceTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcetypes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "DLMPolicyResourceType"
          }
        },
        "Schedules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-schedules",
          "ItemType": "Schedule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-targettags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.RetainRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html",
      "Properties": {
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-count",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-interval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntervalUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-intervalunit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.Schedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html",
      "Properties": {
        "CopyTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-copytags",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CreateRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-createrule",
          "Required": false,
          "Type": "CreateRule",
          "UpdateType": "Mutable"
        },
        "CrossRegionCopyRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-crossregioncopyrules",
          "ItemType": "CrossRegionCopyRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "FastRestoreRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-fastrestorerule",
          "Required": false,
          "Type": "FastRestoreRule",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RetainRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-retainrule",
          "Required": false,
          "Type": "RetainRule",
          "UpdateType": "Mutable"
        },
        "ShareRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-sharerules",
          "ItemType": "ShareRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TagsToAdd": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-tagstoadd",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VariableTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-variabletags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy.ShareRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html",
      "Properties": {
        "TargetAccounts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html#cfn-dlm-lifecyclepolicy-sharerule-targetaccounts",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UnshareInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html#cfn-dlm-lifecyclepolicy-sharerule-unshareinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UnshareIntervalUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html#cfn-dlm-lifecyclepolicy-sharerule-unshareintervalunit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.DocDbSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-docdbsettings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-docdbsettings.html#cfn-dms-endpoint-docdbsettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-docdbsettings.html#cfn-dms-endpoint-docdbsettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.DynamoDbSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html",
      "Properties": {
        "ServiceAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html#cfn-dms-endpoint-dynamodbsettings-serviceaccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.ElasticsearchSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html",
      "Properties": {
        "EndpointUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-endpointuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ErrorRetryDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-errorretryduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FullLoadErrorPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-fullloaderrorpercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-serviceaccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.IbmDb2Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-ibmdb2settings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-ibmdb2settings.html#cfn-dms-endpoint-ibmdb2settings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-ibmdb2settings.html#cfn-dms-endpoint-ibmdb2settings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.KafkaSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kafkasettings.html",
      "Properties": {
        "Broker": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kafkasettings.html#cfn-dms-endpoint-kafkasettings-broker",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Topic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kafkasettings.html#cfn-dms-endpoint-kafkasettings-topic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.KinesisSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html",
      "Properties": {
        "MessageFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html#cfn-dms-endpoint-kinesissettings-messageformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html#cfn-dms-endpoint-kinesissettings-serviceaccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html#cfn-dms-endpoint-kinesissettings-streamarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.MicrosoftSqlServerSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-microsoftsqlserversettings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-microsoftsqlserversettings.html#cfn-dms-endpoint-microsoftsqlserversettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-microsoftsqlserversettings.html#cfn-dms-endpoint-microsoftsqlserversettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.MongoDbSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html",
      "Properties": {
        "AuthMechanism": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-authmechanism",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-authsource",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-authtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DocsToInvestigate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-docstoinvestigate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExtractDocId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-extractdocid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NestingLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-nestinglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-password",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-servername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.MySqlSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mysqlsettings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mysqlsettings.html#cfn-dms-endpoint-mysqlsettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mysqlsettings.html#cfn-dms-endpoint-mysqlsettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.NeptuneSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html",
      "Properties": {
        "ErrorRetryDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html#cfn-dms-endpoint-neptunesettings-errorretryduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IamAuthEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html#cfn-dms-endpoint-neptunesettings-iamauthenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxFileSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html#cfn-dms-endpoint-neptunesettings-maxfilesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxRetryCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html#cfn-dms-endpoint-neptunesettings-maxretrycount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3BucketFolder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html#cfn-dms-endpoint-neptunesettings-s3bucketfolder",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html#cfn-dms-endpoint-neptunesettings-s3bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-neptunesettings.html#cfn-dms-endpoint-neptunesettings-serviceaccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.OracleSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerOracleAsmAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanageroracleasmaccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerOracleAsmSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanageroracleasmsecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.PostgreSqlSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-postgresqlsettings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-postgresqlsettings.html#cfn-dms-endpoint-postgresqlsettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-postgresqlsettings.html#cfn-dms-endpoint-postgresqlsettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.RedshiftSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redshiftsettings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redshiftsettings.html#cfn-dms-endpoint-redshiftsettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redshiftsettings.html#cfn-dms-endpoint-redshiftsettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.S3Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html",
      "Properties": {
        "BucketFolder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-bucketfolder",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CompressionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-compressiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CsvDelimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-csvdelimiter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CsvRowDelimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-csvrowdelimiter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExternalTableDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-externaltabledefinition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-serviceaccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Endpoint.SybaseSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-sybasesettings.html",
      "Properties": {
        "SecretsManagerAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-sybasesettings.html#cfn-dms-endpoint-sybasesettings-secretsmanageraccessrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretsManagerSecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-sybasesettings.html#cfn-dms-endpoint-sybasesettings-secretsmanagersecretid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Job.CsvOutputOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-csvoutputoptions.html",
      "Properties": {
        "Delimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-csvoutputoptions.html#cfn-databrew-job-csvoutputoptions-delimiter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.CsvOutputOptions.Delimiter"
          }
        }
      }
    },
    "AWS::DataBrew::Job.Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html",
      "Properties": {
        "CompressionFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html#cfn-databrew-job-output-compressionformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.Output.CompressionFormat"
          }
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html#cfn-databrew-job-output-format",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.Output.Format"
          }
        },
        "FormatOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html#cfn-databrew-job-output-formatoptions",
          "Required": false,
          "Type": "OutputFormatOptions",
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html#cfn-databrew-job-output-location",
          "Required": true,
          "Type": "S3Location",
          "UpdateType": "Mutable"
        },
        "Overwrite": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html#cfn-databrew-job-output-overwrite",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PartitionColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html#cfn-databrew-job-output-partitioncolumns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Job.OutputFormatOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-outputformatoptions.html",
      "Properties": {
        "Csv": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-outputformatoptions.html#cfn-databrew-job-outputformatoptions-csv",
          "Required": false,
          "Type": "CsvOutputOptions",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Job.S3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-s3location.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-s3location.html#cfn-databrew-job-s3location-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-s3location.html#cfn-databrew-job-s3location-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Recipe.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-action.html",
      "Properties": {
        "Operation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-action.html#cfn-databrew-recipe-action-operation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-action.html#cfn-databrew-recipe-action-parameters",
          "PrimitiveType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Recipe.ConditionExpression": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-conditionexpression.html",
      "Properties": {
        "Condition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-conditionexpression.html#cfn-databrew-recipe-conditionexpression-condition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-conditionexpression.html#cfn-databrew-recipe-conditionexpression-targetcolumn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-conditionexpression.html#cfn-databrew-recipe-conditionexpression-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Recipe.DataCatalogInputDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-datacataloginputdefinition.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-datacataloginputdefinition.html#cfn-databrew-recipe-datacataloginputdefinition-catalogid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-datacataloginputdefinition.html#cfn-databrew-recipe-datacataloginputdefinition-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-datacataloginputdefinition.html#cfn-databrew-recipe-datacataloginputdefinition-tablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TempDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-datacataloginputdefinition.html#cfn-databrew-recipe-datacataloginputdefinition-tempdirectory",
          "Required": false,
          "Type": "S3Location",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Recipe.RecipeParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html",
      "Properties": {
        "AggregateFunction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-aggregatefunction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Base": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-base",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CaseStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-casestatement",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CategoryMap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-categorymap",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CharsToRemove": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-charstoremove",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CollapseConsecutiveWhitespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-collapseconsecutivewhitespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColumnDataType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-columndatatype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColumnRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-columnrange",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-count",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomCharacters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-customcharacters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomStopWords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-customstopwords",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-customvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatasetsColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-datasetscolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DateAddValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-dateaddvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DateTimeFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-datetimeformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DateTimeParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-datetimeparameters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeleteOtherRows": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-deleteotherrows",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Delimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-delimiter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-endpattern",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-endposition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-endvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExpandContractions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-expandcontractions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Exponent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-exponent",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FalseString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-falsestring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GroupByAggFunctionOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-groupbyaggfunctionoptions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GroupByColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-groupbycolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HiddenColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-hiddencolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IgnoreCase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-ignorecase",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeInSplit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-includeinsplit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Input": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-input",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-interval",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IsText": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-istext",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JoinKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-joinkeys",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JoinType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-jointype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LeftColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-leftcolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Limit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-limit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LowerBound": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-lowerbound",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MapType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-maptype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ModeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-modetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MultiLine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-multiline",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRows": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-numrows",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRowsAfter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-numrowsafter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRowsBefore": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-numrowsbefore",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OrderByColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-orderbycolumn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OrderByColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-orderbycolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Other": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-other",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Pattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-pattern",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PatternOption1": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-patternoption1",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PatternOption2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-patternoption2",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PatternOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-patternoptions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-period",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Position": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-position",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveAllPunctuation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removeallpunctuation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveAllQuotes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removeallquotes",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveAllWhitespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removeallwhitespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveCustomCharacters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removecustomcharacters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveCustomValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removecustomvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveLeadingAndTrailingPunctuation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removeleadingandtrailingpunctuation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveLeadingAndTrailingQuotes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removeleadingandtrailingquotes",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveLeadingAndTrailingWhitespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removeleadingandtrailingwhitespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveLetters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removeletters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveNumbers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removenumbers",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveSourceColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removesourcecolumn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoveSpecialCharacters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-removespecialcharacters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RightColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-rightcolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SampleSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-samplesize",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SampleType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-sampletype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecondInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-secondinput",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecondaryInputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-secondaryinputs",
          "DuplicatesAllowed": true,
          "ItemType": "SecondaryInput",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SheetIndexes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-sheetindexes",
          "PrimitiveItemType": "Integer",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SheetNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-sheetnames",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-sourcecolumn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceColumn1": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-sourcecolumn1",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceColumn2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-sourcecolumn2",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-sourcecolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartColumnIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-startcolumnindex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-startpattern",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-startposition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-startvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StemmingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-stemmingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StepCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-stepcount",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StepIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-stepindex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StopWordsMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-stopwordsmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Strategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-strategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-targetcolumn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetColumnNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-targetcolumnnames",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetDateFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-targetdateformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-targetindex",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-timezone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenizerPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-tokenizerpattern",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TrueString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-truestring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UdfLang": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-udflang",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Units": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-units",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UnpivotColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-unpivotcolumn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UpperBound": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-upperbound",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UseNewDataFrame": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-usenewdataframe",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value1": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-value1",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-value2",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ValueColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-valuecolumn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ViewFrame": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html#cfn-databrew-recipe-recipeparameters-viewframe",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Recipe.RecipeStep": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipestep.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipestep.html#cfn-databrew-recipe-recipestep-action",
          "Required": true,
          "Type": "Action",
          "UpdateType": "Mutable"
        },
        "ConditionExpressions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipestep.html#cfn-databrew-recipe-recipestep-conditionexpressions",
          "ItemType": "ConditionExpression",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Recipe.S3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-s3location.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-s3location.html#cfn-databrew-recipe-s3location-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-s3location.html#cfn-databrew-recipe-s3location-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Recipe.SecondaryInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-secondaryinput.html",
      "Properties": {
        "DataCatalogInputDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-secondaryinput.html#cfn-databrew-recipe-secondaryinput-datacataloginputdefinition",
          "Required": false,
          "Type": "DataCatalogInputDefinition",
          "UpdateType": "Mutable"
        },
        "S3InputDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-secondaryinput.html#cfn-databrew-recipe-secondaryinput-s3inputdefinition",
          "Required": false,
          "Type": "S3Location",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataSync::LocationEFS.Ec2Config": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationefs-ec2config.html",
      "Properties": {
        "SecurityGroupArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationefs-ec2config.html#cfn-datasync-locationefs-ec2config-securitygrouparns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationEFS.Ec2Config.SecurityGroupArns"
          }
        },
        "SubnetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationefs-ec2config.html#cfn-datasync-locationefs-ec2config-subnetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationEFS.Ec2Config.SubnetArn"
          }
        }
      }
    },
    "AWS::DataSync::LocationNFS.MountOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-mountoptions.html",
      "Properties": {
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-mountoptions.html#cfn-datasync-locationnfs-mountoptions-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationNFS.MountOptions.Version"
          }
        }
      }
    },
    "AWS::DataSync::LocationNFS.OnPremConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-onpremconfig.html",
      "Properties": {
        "AgentArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-onpremconfig.html#cfn-datasync-locationnfs-onpremconfig-agentarns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationNFS.OnPremConfig.AgentArns"
          }
        }
      }
    },
    "AWS::DataSync::LocationS3.S3Config": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locations3-s3config.html",
      "Properties": {
        "BucketAccessRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locations3-s3config.html#cfn-datasync-locations3-s3config-bucketaccessrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationS3.S3Config.BucketAccessRoleArn"
          }
        }
      }
    },
    "AWS::DataSync::LocationSMB.MountOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-mountoptions.html",
      "Properties": {
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-mountoptions.html#cfn-datasync-locationsmb-mountoptions-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationSMB.MountOptions.Version"
          }
        }
      }
    },
    "AWS::DataSync::Task.FilterRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-filterrule.html",
      "Properties": {
        "FilterType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-filterrule.html#cfn-datasync-task-filterrule-filtertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.FilterRule.FilterType"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-filterrule.html#cfn-datasync-task-filterrule-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.FilterRule.Value"
          }
        }
      }
    },
    "AWS::DataSync::Task.Options": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html",
      "Properties": {
        "Atime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-atime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.Atime"
          }
        },
        "BytesPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-bytespersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Gid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-gid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.Gid"
          }
        },
        "LogLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-loglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.LogLevel"
          }
        },
        "Mtime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-mtime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.Mtime"
          }
        },
        "OverwriteMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-overwritemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.OverwriteMode"
          }
        },
        "PosixPermissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-posixpermissions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.PosixPermissions"
          }
        },
        "PreserveDeletedFiles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-preservedeletedfiles",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.PreserveDeletedFiles"
          }
        },
        "PreserveDevices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-preservedevices",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.PreserveDevices"
          }
        },
        "TaskQueueing": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-taskqueueing",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.TaskQueueing"
          }
        },
        "TransferMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-transfermode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.TransferMode"
          }
        },
        "Uid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-uid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.Uid"
          }
        },
        "VerifyMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-verifymode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Options.VerifyMode"
          }
        }
      }
    },
    "AWS::DataSync::Task.TaskSchedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskschedule.html",
      "Properties": {
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskschedule.html#cfn-datasync-task-taskschedule-scheduleexpression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.TaskSchedule.ScheduleExpression"
          }
        }
      }
    },
    "AWS::DirectoryService::MicrosoftAD.VpcSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html",
      "Properties": {
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::DirectoryService::SimpleAD.VpcSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html",
      "Properties": {
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::DynamoDB::Table.AttributeDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html",
      "Properties": {
        "AttributeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AttributeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DynamoDB::Table.AttributeDefinition.AttributeType"
          }
        }
      }
    },
    "AWS::DynamoDB::Table.GlobalSecondaryIndex": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html",
      "Properties": {
        "IndexName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-indexname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "KeySchema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-keyschema",
          "DuplicatesAllowed": false,
          "ItemType": "KeySchema",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Projection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-projection",
          "Required": true,
          "Type": "Projection",
          "UpdateType": "Mutable"
        },
        "ProvisionedThroughput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-provisionedthroughput",
          "Required": false,
          "Type": "ProvisionedThroughput",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DynamoDB::Table.KeySchema": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html",
      "Properties": {
        "AttributeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-attributename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "KeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-keytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DynamoDB::Table.KeySchema.KeyType"
          }
        }
      }
    },
    "AWS::DynamoDB::Table.KinesisStreamSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-kinesisstreamspecification.html",
      "Properties": {
        "StreamArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-kinesisstreamspecification.html#cfn-dynamodb-kinesisstreamspecification-streamarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DynamoDB::Table.LocalSecondaryIndex": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html",
      "Properties": {
        "IndexName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-indexname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "KeySchema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-keyschema",
          "DuplicatesAllowed": false,
          "ItemType": "KeySchema",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Projection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-projection",
          "Required": true,
          "Type": "Projection",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html",
      "Properties": {
        "PointInTimeRecoveryEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html#cfn-dynamodb-table-pointintimerecoveryspecification-pointintimerecoveryenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DynamoDB::Table.Projection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html",
      "Properties": {
        "NonKeyAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-nonkeyatt",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ProjectionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-projtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DynamoDB::Table.Projection.ProjectionType"
          }
        }
      }
    },
    "AWS::DynamoDB::Table.ProvisionedThroughput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html",
      "Properties": {
        "ReadCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-readcapacityunits",
          "PrimitiveType": "Long",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "WriteCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-writecapacityunits",
          "PrimitiveType": "Long",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DynamoDB::Table.SSESpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html",
      "Properties": {
        "KMSMasterKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-kmsmasterkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SSEEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-sseenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SSEType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-ssetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DynamoDB::Table.StreamSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html",
      "Properties": {
        "StreamViewType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html#cfn-dynamodb-streamspecification-streamviewtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DynamoDB::Table.StreamSpecification.StreamViewType"
          }
        }
      }
    },
    "AWS::DynamoDB::Table.TimeToLiveSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html",
      "Properties": {
        "AttributeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-attributename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::CapacityReservation.TagSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html",
      "Properties": {
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-resourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint.CertificateAuthenticationRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html",
      "Properties": {
        "ClientRootCertificateChainArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html#cfn-ec2-clientvpnendpoint-certificateauthenticationrequest-clientrootcertificatechainarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint.ClientAuthenticationRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html",
      "Properties": {
        "ActiveDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-activedirectory",
          "Required": false,
          "Type": "DirectoryServiceAuthenticationRequest",
          "UpdateType": "Mutable"
        },
        "FederatedAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-federatedauthentication",
          "Required": false,
          "Type": "FederatedAuthenticationRequest",
          "UpdateType": "Mutable"
        },
        "MutualAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-mutualauthentication",
          "Required": false,
          "Type": "CertificateAuthenticationRequest",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint.ClientConnectOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientconnectoptions.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientconnectoptions.html#cfn-ec2-clientvpnendpoint-clientconnectoptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LambdaFunctionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientconnectoptions.html#cfn-ec2-clientvpnendpoint-clientconnectoptions-lambdafunctionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint.ConnectionLogOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html",
      "Properties": {
        "CloudwatchLogGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchloggroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CloudwatchLogStream": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchlogstream",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint.DirectoryServiceAuthenticationRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html",
      "Properties": {
        "DirectoryId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html#cfn-ec2-clientvpnendpoint-directoryserviceauthenticationrequest-directoryid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint.FederatedAuthenticationRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-federatedauthenticationrequest.html",
      "Properties": {
        "SAMLProviderArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-federatedauthenticationrequest.html#cfn-ec2-clientvpnendpoint-federatedauthenticationrequest-samlproviderarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SelfServiceSAMLProviderArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-federatedauthenticationrequest.html#cfn-ec2-clientvpnendpoint-federatedauthenticationrequest-selfservicesamlproviderarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint.TagSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html",
      "Properties": {
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-resourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-tags",
          "ItemType": "Tag",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.CapacityReservationOptionsRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-capacityreservationoptionsrequest.html",
      "Properties": {
        "UsageStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-capacityreservationoptionsrequest.html#cfn-ec2-ec2fleet-capacityreservationoptionsrequest-usagestrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.FleetLaunchTemplateConfigRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html",
      "Properties": {
        "LaunchTemplateSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-launchtemplatespecification",
          "Required": false,
          "Type": "FleetLaunchTemplateSpecificationRequest",
          "UpdateType": "Immutable"
        },
        "Overrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-overrides",
          "ItemType": "FleetLaunchTemplateOverridesRequest",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.FleetLaunchTemplateOverridesRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2InstanceType"
          }
        },
        "MaxPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-maxprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Placement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-placement",
          "Required": false,
          "Type": "Placement",
          "UpdateType": "Immutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-priority",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "WeightedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-weightedcapacity",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html",
      "Properties": {
        "LaunchTemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LaunchTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.OnDemandOptionsRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-allocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2FleetOnDemandAllocationStrategy"
          }
        },
        "CapacityReservationOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-capacityreservationoptions",
          "Required": false,
          "Type": "CapacityReservationOptionsRequest",
          "UpdateType": "Immutable"
        },
        "MaxTotalPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-maxtotalprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MinTargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-mintargetcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SingleAvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-singleavailabilityzone",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SingleInstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-singleinstancetype",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.Placement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html",
      "Properties": {
        "Affinity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-affinity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HostId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-hostid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HostResourceGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-hostresourcegrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PartitionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-partitionnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SpreadDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-spreaddomain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-placement.html#cfn-ec2-ec2fleet-placement-tenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.SpotOptionsRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-allocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2FleetSpotAllocationStrategy"
          }
        },
        "InstanceInterruptionBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-instanceinterruptionbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2FleetSpotInterruptionBehavior"
          }
        },
        "InstancePoolsToUseCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-instancepoolstousecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MaxTotalPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-maxtotalprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MinTargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-mintargetcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SingleAvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-singleavailabilityzone",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SingleInstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-singleinstancetype",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.TagSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html",
      "Properties": {
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-resourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet.TargetCapacitySpecificationRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html",
      "Properties": {
        "DefaultTargetCapacityType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-defaulttargetcapacitytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2FleetDefaultTargetCapacityType"
          }
        },
        "OnDemandTargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-ondemandtargetcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpotTargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-spottargetcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TotalTargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-totaltargetcapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.AssociationParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-value",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.BlockDeviceMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html",
      "Properties": {
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-devicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Ebs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-ebs",
          "Required": false,
          "Type": "Ebs",
          "UpdateType": "Mutable"
        },
        "NoDevice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-nodevice",
          "Required": false,
          "Type": "NoDevice",
          "UpdateType": "Mutable"
        },
        "VirtualName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-virtualname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.CpuOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html",
      "Properties": {
        "CoreCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html#cfn-ec2-instance-cpuoptions-corecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThreadsPerCore": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html#cfn-ec2-instance-cpuoptions-threadspercore",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.CreditSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html",
      "Properties": {
        "CPUCredits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html#cfn-ec2-instance-creditspecification-cpucredits",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2CpuCredits"
          }
        }
      }
    },
    "AWS::EC2::Instance.Ebs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html",
      "Properties": {
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-deleteontermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsIops"
          }
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-instance-ebs-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SnapshotId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-snapshotid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsVolumeType"
          }
        }
      }
    },
    "AWS::EC2::Instance.ElasticGpuSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html#cfn-ec2-instance-elasticgpuspecification-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.ElasticInferenceAccelerator": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html",
      "Properties": {
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html#cfn-ec2-instance-elasticinferenceaccelerator-count",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html#cfn-ec2-instance-elasticinferenceaccelerator-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "ElasticInferenceAccelerator"
          }
        }
      }
    },
    "AWS::EC2::Instance.EnclaveOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enclaveoptions.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enclaveoptions.html#cfn-ec2-instance-enclaveoptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.HibernationOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-hibernationoptions.html",
      "Properties": {
        "Configured": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-hibernationoptions.html#cfn-ec2-instance-hibernationoptions-configured",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.InstanceIpv6Address": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html",
      "Properties": {
        "Ipv6Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html#cfn-ec2-instance-instanceipv6address-ipv6address",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.LaunchTemplateSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html",
      "Properties": {
        "LaunchTemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html#cfn-ec2-instance-launchtemplatespecification-launchtemplateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html#cfn-ec2-instance-launchtemplatespecification-launchtemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html#cfn-ec2-instance-launchtemplatespecification-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.LicenseSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html",
      "Properties": {
        "LicenseConfigurationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html#cfn-ec2-instance-licensespecification-licenseconfigurationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.NetworkInterface": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html",
      "Properties": {
        "AssociatePublicIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-associatepubip",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-delete",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-deviceindex",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "GroupSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-groupset",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Ipv6AddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#cfn-ec2-instance-networkinterface-ipv6addresscount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ipv6Addresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#cfn-ec2-instance-networkinterface-ipv6addresses",
          "DuplicatesAllowed": true,
          "ItemType": "InstanceIpv6Address",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-network-iface",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-privateipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-privateipaddresses",
          "DuplicatesAllowed": true,
          "ItemType": "PrivateIpAddressSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecondaryPrivateIpAddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-secondprivateip",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.NoDevice": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-nodevice.html",
      "Properties": {}
    },
    "AWS::EC2::Instance.PrivateIpAddressSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html",
      "Properties": {
        "Primary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Instance.SsmAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html",
      "Properties": {
        "AssociationParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-associationparameters",
          "DuplicatesAllowed": true,
          "ItemType": "AssociationParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DocumentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-documentname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "SsmDocumentName"
          }
        }
      }
    },
    "AWS::EC2::Instance.Volume": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html",
      "Properties": {
        "Device": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html#cfn-ec2-mountpoint-device",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VolumeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html#cfn-ec2-mountpoint-volumeid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.BlockDeviceMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html",
      "Properties": {
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-devicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ebs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs",
          "Required": false,
          "Type": "Ebs",
          "UpdateType": "Mutable"
        },
        "NoDevice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-nodevice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VirtualName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-virtualname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.CapacityReservationSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html",
      "Properties": {
        "CapacityReservationPreference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationpreference",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CapacityReservationTarget": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationtarget",
          "Required": false,
          "Type": "CapacityReservationTarget",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.CapacityReservationTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html",
      "Properties": {
        "CapacityReservationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html#cfn-ec2-launchtemplate-capacityreservationtarget-capacityreservationid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CapacityReservationResourceGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html#cfn-ec2-launchtemplate-capacityreservationtarget-capacityreservationresourcegrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.CpuOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-cpuoptions.html",
      "Properties": {
        "CoreCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-cpuoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-cpuoptions-corecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThreadsPerCore": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-cpuoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-cpuoptions-threadspercore",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.CreditSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html",
      "Properties": {
        "CpuCredits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-creditspecification-cpucredits",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2CpuCredits"
          }
        }
      }
    },
    "AWS::EC2::LaunchTemplate.Ebs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html",
      "Properties": {
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-deleteontermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-snapshotid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Throughput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-throughput",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsVolumeType"
          }
        }
      }
    },
    "AWS::EC2::LaunchTemplate.ElasticGpuSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html#cfn-ec2-launchtemplate-elasticgpuspecification-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.EnclaveOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-enclaveoptions.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-enclaveoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-enclaveoptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.HibernationOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html",
      "Properties": {
        "Configured": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-hibernationoptions-configured",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.IamInstanceProfile": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::InstanceProfile.NameOrArn"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::InstanceProfile.Name"
          }
        }
      }
    },
    "AWS::EC2::LaunchTemplate.InstanceMarketOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html",
      "Properties": {
        "MarketType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-markettype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EC2MarketType"
          }
        },
        "SpotOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions",
          "Required": false,
          "Type": "SpotOptions",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.Ipv6Add": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html",
      "Properties": {
        "Ipv6Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html#cfn-ec2-launchtemplate-ipv6add-ipv6address",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.LaunchTemplateData": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html",
      "Properties": {
        "BlockDeviceMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-blockdevicemappings",
          "ItemType": "BlockDeviceMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CapacityReservationSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification",
          "Required": false,
          "Type": "CapacityReservationSpecification",
          "UpdateType": "Mutable"
        },
        "CpuOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-cpuoptions",
          "Required": false,
          "Type": "CpuOptions",
          "UpdateType": "Mutable"
        },
        "CreditSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-creditspecification",
          "Required": false,
          "Type": "CreditSpecification",
          "UpdateType": "Mutable"
        },
        "DisableApiTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-disableapitermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ElasticGpuSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-elasticgpuspecifications",
          "ItemType": "ElasticGpuSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ElasticInferenceAccelerators": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-elasticinferenceaccelerators",
          "ItemType": "LaunchTemplateElasticInferenceAccelerator",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EnclaveOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-enclaveoptions",
          "Required": false,
          "Type": "EnclaveOptions",
          "UpdateType": "Mutable"
        },
        "HibernationOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-hibernationoptions",
          "Required": false,
          "Type": "HibernationOptions",
          "UpdateType": "Mutable"
        },
        "IamInstanceProfile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile",
          "Required": false,
          "Type": "IamInstanceProfile",
          "UpdateType": "Mutable"
        },
        "ImageId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-imageid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceInitiatedShutdownBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-instanceinitiatedshutdownbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EC2InstanceInitiatedShutdownBehavior"
          }
        },
        "InstanceMarketOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions",
          "Required": false,
          "Type": "InstanceMarketOptions",
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2InstanceType"
          }
        },
        "KernelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-kernelid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-keyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LicenseSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-licensespecifications",
          "ItemType": "LicenseSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetadataOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-metadataoptions",
          "Required": false,
          "Type": "MetadataOptions",
          "UpdateType": "Mutable"
        },
        "Monitoring": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-monitoring",
          "Required": false,
          "Type": "Monitoring",
          "UpdateType": "Mutable"
        },
        "NetworkInterfaces": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-networkinterfaces",
          "ItemType": "NetworkInterface",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Placement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-placement",
          "Required": false,
          "Type": "Placement",
          "UpdateType": "Mutable"
        },
        "RamDiskId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-ramdiskid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-securitygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TagSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-tagspecifications",
          "ItemType": "TagSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-userdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.LaunchTemplateElasticInferenceAccelerator": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html",
      "Properties": {
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html#cfn-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator-count",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html#cfn-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.LicenseSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html",
      "Properties": {
        "LicenseConfigurationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html#cfn-ec2-launchtemplate-licensespecification-licenseconfigurationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.MetadataOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-metadataoptions.html",
      "Properties": {
        "HttpEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-metadataoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-metadataoptions-httpendpoint",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpPutResponseHopLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-metadataoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-metadataoptions-httpputresponsehoplimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpTokens": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-metadataoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-metadataoptions-httptokens",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.Monitoring": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html#cfn-ec2-launchtemplate-launchtemplatedata-monitoring-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.NetworkInterface": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html",
      "Properties": {
        "AssociateCarrierIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-associatecarrieripaddress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AssociatePublicIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-associatepublicipaddress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-deleteontermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-deviceindex",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Groups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-groups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InterfaceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-interfacetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ipv6AddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-ipv6addresscount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ipv6Addresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-ipv6addresses",
          "ItemType": "Ipv6Add",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NetworkCardIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-networkcardindex",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-privateipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-privateipaddresses",
          "ItemType": "PrivateIpAdd",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecondaryPrivateIpAddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-secondaryprivateipaddresscount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.Placement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html",
      "Properties": {
        "Affinity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-affinity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-hostid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostResourceGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-hostresourcegrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PartitionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-partitionnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpreadDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-spreaddomain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-tenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2Tenancy"
          }
        }
      }
    },
    "AWS::EC2::LaunchTemplate.PrivateIpAdd": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html",
      "Properties": {
        "Primary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-primary",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-privateipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.SpotOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html",
      "Properties": {
        "BlockDurationMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-blockdurationminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceInterruptionBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-instanceinterruptionbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EC2SpotInstanceInitiatedShutdownBehavior"
          }
        },
        "MaxPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-maxprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpotInstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-spotinstancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EC2SpotInstanceType"
          }
        },
        "ValidUntil": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-validuntil",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.TagSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html",
      "Properties": {
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-resourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "LaunchTemplateTagSpecificationResourceType"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-tags",
          "ItemType": "Tag",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate.TagSpecifications": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecifications.html",
      "ItemType": "TagSpecification",
      "Required": false,
      "Type": "List",
      "UpdateType": "Mutable"
    },
    "AWS::EC2::NetworkAclEntry.Icmp": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html",
      "Properties": {
        "Code": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html#cfn-ec2-networkaclentry-icmp-code",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html#cfn-ec2-networkaclentry-icmp-type",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkAclEntry.PortRange": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html",
      "Properties": {
        "From": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-from",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "To": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-to",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AlternatePathHint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-alternatepathhint.html",
      "Properties": {
        "ComponentArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-alternatepathhint.html#cfn-ec2-networkinsightsanalysis-alternatepathhint-componentarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ComponentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-alternatepathhint.html#cfn-ec2-networkinsightsanalysis-alternatepathhint-componentid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisAclRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisaclrule.html",
      "Properties": {
        "Cidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisaclrule.html#cfn-ec2-networkinsightsanalysis-analysisaclrule-cidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Egress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisaclrule.html#cfn-ec2-networkinsightsanalysis-analysisaclrule-egress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PortRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisaclrule.html#cfn-ec2-networkinsightsanalysis-analysisaclrule-portrange",
          "Required": false,
          "Type": "PortRange",
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisaclrule.html#cfn-ec2-networkinsightsanalysis-analysisaclrule-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::NetworkInsightsAnalysis.AnalysisAclRule.Protocol"
          }
        },
        "RuleAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisaclrule.html#cfn-ec2-networkinsightsanalysis-analysisaclrule-ruleaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RuleNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisaclrule.html#cfn-ec2-networkinsightsanalysis-analysisaclrule-rulenumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysiscomponent.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysiscomponent.html#cfn-ec2-networkinsightsanalysis-analysiscomponent-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysiscomponent.html#cfn-ec2-networkinsightsanalysis-analysiscomponent-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisLoadBalancerListener": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancerlistener.html",
      "Properties": {
        "InstancePort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancerlistener.html#cfn-ec2-networkinsightsanalysis-analysisloadbalancerlistener-instanceport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoadBalancerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancerlistener.html#cfn-ec2-networkinsightsanalysis-analysisloadbalancerlistener-loadbalancerport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisLoadBalancerTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancertarget.html",
      "Properties": {
        "Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancertarget.html#cfn-ec2-networkinsightsanalysis-analysisloadbalancertarget-address",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancertarget.html#cfn-ec2-networkinsightsanalysis-analysisloadbalancertarget-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Instance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancertarget.html#cfn-ec2-networkinsightsanalysis-analysisloadbalancertarget-instance",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisloadbalancertarget.html#cfn-ec2-networkinsightsanalysis-analysisloadbalancertarget-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisPacketHeader": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysispacketheader.html",
      "Properties": {
        "DestinationAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysispacketheader.html#cfn-ec2-networkinsightsanalysis-analysispacketheader-destinationaddresses",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DestinationPortRanges": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysispacketheader.html#cfn-ec2-networkinsightsanalysis-analysispacketheader-destinationportranges",
          "ItemType": "PortRange",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysispacketheader.html#cfn-ec2-networkinsightsanalysis-analysispacketheader-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::NetworkInsightsAnalysis.AnalysisPacketHeader.Protocol"
          }
        },
        "SourceAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysispacketheader.html#cfn-ec2-networkinsightsanalysis-analysispacketheader-sourceaddresses",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourcePortRanges": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysispacketheader.html#cfn-ec2-networkinsightsanalysis-analysispacketheader-sourceportranges",
          "ItemType": "PortRange",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisRouteTableRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html",
      "Properties": {
        "NatGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-natgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Origin": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-origin",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TransitGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-transitgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcPeeringConnectionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-vpcpeeringconnectionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "destinationCidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-destinationcidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "destinationPrefixListId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-destinationprefixlistid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "egressOnlyInternetGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-egressonlyinternetgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "gatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-gatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "instanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysisroutetableroute.html#cfn-ec2-networkinsightsanalysis-analysisroutetableroute-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisSecurityGroupRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysissecuritygrouprule.html",
      "Properties": {
        "Cidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysissecuritygrouprule.html#cfn-ec2-networkinsightsanalysis-analysissecuritygrouprule-cidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Direction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysissecuritygrouprule.html#cfn-ec2-networkinsightsanalysis-analysissecuritygrouprule-direction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PortRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysissecuritygrouprule.html#cfn-ec2-networkinsightsanalysis-analysissecuritygrouprule-portrange",
          "Required": false,
          "Type": "PortRange",
          "UpdateType": "Mutable"
        },
        "PrefixListId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysissecuritygrouprule.html#cfn-ec2-networkinsightsanalysis-analysissecuritygrouprule-prefixlistid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysissecuritygrouprule.html#cfn-ec2-networkinsightsanalysis-analysissecuritygrouprule-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::NetworkInsightsAnalysis.AnalysisSecurityGroupRule.Protocol"
          }
        },
        "SecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-analysissecuritygrouprule.html#cfn-ec2-networkinsightsanalysis-analysissecuritygrouprule-securitygroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.Explanation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html",
      "Properties": {
        "Acl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-acl",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "AclRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-aclrule",
          "Required": false,
          "Type": "AnalysisAclRule",
          "UpdateType": "Mutable"
        },
        "Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-address",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Addresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-addresses",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AttachedTo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-attachedto",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-availabilityzones",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Cidrs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-cidrs",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ClassicLoadBalancerListener": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-classicloadbalancerlistener",
          "Required": false,
          "Type": "AnalysisLoadBalancerListener",
          "UpdateType": "Mutable"
        },
        "Component": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-component",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "CustomerGateway": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-customergateway",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-destination",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "DestinationVpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-destinationvpc",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "Direction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-direction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ElasticLoadBalancerListener": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-elasticloadbalancerlistener",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "ExplanationCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-explanationcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IngressRouteTable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-ingressroutetable",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "InternetGateway": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-internetgateway",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "LoadBalancerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-loadbalancerarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoadBalancerListenerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-loadbalancerlistenerport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoadBalancerTarget": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-loadbalancertarget",
          "Required": false,
          "Type": "AnalysisLoadBalancerTarget",
          "UpdateType": "Mutable"
        },
        "LoadBalancerTargetGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-loadbalancertargetgroup",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "LoadBalancerTargetGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-loadbalancertargetgroups",
          "ItemType": "AnalysisComponent",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LoadBalancerTargetPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-loadbalancertargetport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MissingComponent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-missingcomponent",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NatGateway": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-natgateway",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "NetworkInterface": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-networkinterface",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "PacketField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-packetfield",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PortRanges": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-portranges",
          "ItemType": "PortRange",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PrefixList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-prefixlist",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "Protocols": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-protocols",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::NetworkInsightsAnalysis.Explanation.Protocols"
          }
        },
        "RouteTable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-routetable",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "RouteTableRoute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-routetableroute",
          "Required": false,
          "Type": "AnalysisRouteTableRoute",
          "UpdateType": "Mutable"
        },
        "SecurityGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-securitygroup",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "SecurityGroupRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-securitygrouprule",
          "Required": false,
          "Type": "AnalysisSecurityGroupRule",
          "UpdateType": "Mutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-securitygroups",
          "ItemType": "AnalysisComponent",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceVpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-sourcevpc",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Subnet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-subnet",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "SubnetRouteTable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-subnetroutetable",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "Vpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-vpc",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "VpcPeeringConnection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-vpcpeeringconnection",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "VpnConnection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-vpnconnection",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "VpnGateway": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-vpngateway",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "vpcEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-explanation.html#cfn-ec2-networkinsightsanalysis-explanation-vpcendpoint",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.PathComponent": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html",
      "Properties": {
        "AclRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-aclrule",
          "Required": false,
          "Type": "AnalysisAclRule",
          "UpdateType": "Mutable"
        },
        "Component": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-component",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "DestinationVpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-destinationvpc",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "InboundHeader": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-inboundheader",
          "Required": false,
          "Type": "AnalysisPacketHeader",
          "UpdateType": "Mutable"
        },
        "OutboundHeader": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-outboundheader",
          "Required": false,
          "Type": "AnalysisPacketHeader",
          "UpdateType": "Mutable"
        },
        "RouteTableRoute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-routetableroute",
          "Required": false,
          "Type": "AnalysisRouteTableRoute",
          "UpdateType": "Mutable"
        },
        "SecurityGroupRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-securitygrouprule",
          "Required": false,
          "Type": "AnalysisSecurityGroupRule",
          "UpdateType": "Mutable"
        },
        "SequenceNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-sequencenumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceVpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-sourcevpc",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "Subnet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-subnet",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        },
        "Vpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-vpc",
          "Required": false,
          "Type": "AnalysisComponent",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis.PortRange": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-portrange.html",
      "Properties": {
        "From": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-portrange.html#cfn-ec2-networkinsightsanalysis-portrange-from",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "To": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-portrange.html#cfn-ec2-networkinsightsanalysis-portrange-to",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInterface.InstanceIpv6Address": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html",
      "Properties": {
        "Ipv6Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html#cfn-ec2-networkinterface-instanceipv6address-ipv6address",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInterface.PrivateIpAddressSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html",
      "Properties": {
        "Primary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::PrefixList.Entry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-prefixlist-entry.html",
      "Properties": {
        "Cidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-prefixlist-entry.html#cfn-ec2-prefixlist-entry-cidr",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::PrefixList.Entry.Cidr"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-prefixlist-entry.html#cfn-ec2-prefixlist-entry-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SecurityGroup.Egress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html",
      "Properties": {
        "CidrIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidrip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "CidrIpv6": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidripv6",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::SecurityGroup.Description"
          }
        },
        "DestinationPrefixListId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-destinationprefixlistid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationSecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-destsecgroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FromPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-fromport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IpProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-ipprotocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ToPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-toport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SecurityGroup.Ingress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html",
      "Properties": {
        "CidrIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidrip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "CidrIpv6": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidripv6",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::SecurityGroup.Description"
          }
        },
        "FromPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-fromport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IpProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-ipprotocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SourcePrefixListId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-securitygroup-ingress-sourceprefixlistid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceSecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SourceSecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceSecurityGroupOwnerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupownerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ToPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-toport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.BlockDeviceMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html",
      "Properties": {
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-devicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Ebs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-ebs",
          "Required": false,
          "Type": "EbsBlockDevice",
          "UpdateType": "Mutable"
        },
        "NoDevice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-nodevice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VirtualName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-virtualname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.ClassicLoadBalancer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html#cfn-ec2-spotfleet-classicloadbalancer-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.ClassicLoadBalancersConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html",
      "Properties": {
        "ClassicLoadBalancers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html#cfn-ec2-spotfleet-classicloadbalancersconfig-classicloadbalancers",
          "DuplicatesAllowed": false,
          "ItemType": "ClassicLoadBalancer",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.EbsBlockDevice": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html",
      "Properties": {
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-deleteontermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-snapshotid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsVolumeType"
          }
        }
      }
    },
    "AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html",
      "Properties": {
        "LaunchTemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.GroupIdentifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html",
      "Properties": {
        "GroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html#cfn-ec2-spotfleet-groupidentifier-groupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.IamInstanceProfileSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html#cfn-ec2-spotfleet-iaminstanceprofilespecification-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::InstanceProfile.Arn"
          }
        }
      }
    },
    "AWS::EC2::SpotFleet.InstanceIpv6Address": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html",
      "Properties": {
        "Ipv6Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html#cfn-ec2-spotfleet-instanceipv6address-ipv6address",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.InstanceNetworkInterfaceSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html",
      "Properties": {
        "AssociatePublicIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-associatepublicipaddress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-deleteontermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-deviceindex",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Groups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-groups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Ipv6AddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-ipv6addresscount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ipv6Addresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-ipv6addresses",
          "DuplicatesAllowed": false,
          "ItemType": "InstanceIpv6Address",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-privateipaddresses",
          "DuplicatesAllowed": false,
          "ItemType": "PrivateIpAddressSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecondaryPrivateIpAddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-secondaryprivateipaddresscount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.LaunchTemplateConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html",
      "Properties": {
        "LaunchTemplateSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-launchtemplatespecification",
          "Required": false,
          "Type": "FleetLaunchTemplateSpecification",
          "UpdateType": "Mutable"
        },
        "Overrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-overrides",
          "DuplicatesAllowed": false,
          "ItemType": "LaunchTemplateOverrides",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.LaunchTemplateOverrides": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-priority",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpotPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-spotprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WeightedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-weightedcapacity",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.LoadBalancersConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html",
      "Properties": {
        "ClassicLoadBalancersConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-classicloadbalancersconfig",
          "Required": false,
          "Type": "ClassicLoadBalancersConfig",
          "UpdateType": "Mutable"
        },
        "TargetGroupsConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-targetgroupsconfig",
          "Required": false,
          "Type": "TargetGroupsConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.PrivateIpAddressSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html",
      "Properties": {
        "Primary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-primary",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-privateipaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.SpotCapacityRebalance": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotcapacityrebalance.html",
      "Properties": {
        "ReplacementStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotcapacityrebalance.html#cfn-ec2-spotfleet-spotcapacityrebalance-replacementstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.SpotFleetLaunchSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html",
      "Properties": {
        "BlockDeviceMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-blockdevicemappings",
          "DuplicatesAllowed": false,
          "ItemType": "BlockDeviceMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IamInstanceProfile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-iaminstanceprofile",
          "Required": false,
          "Type": "IamInstanceProfileSpecification",
          "UpdateType": "Mutable"
        },
        "ImageId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-imageid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2InstanceType"
          }
        },
        "KernelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-kernelid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-keyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Monitoring": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-monitoring",
          "Required": false,
          "Type": "SpotFleetMonitoring",
          "UpdateType": "Mutable"
        },
        "NetworkInterfaces": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-networkinterfaces",
          "DuplicatesAllowed": false,
          "ItemType": "InstanceNetworkInterfaceSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Placement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-placement",
          "Required": false,
          "Type": "SpotPlacement",
          "UpdateType": "Mutable"
        },
        "RamdiskId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-ramdiskid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-securitygroups",
          "DuplicatesAllowed": false,
          "ItemType": "GroupIdentifier",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SpotPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-spotprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-tagspecifications",
          "DuplicatesAllowed": false,
          "ItemType": "SpotFleetTagSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-userdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WeightedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-weightedcapacity",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.SpotFleetMonitoring": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html#cfn-ec2-spotfleet-spotfleetmonitoring-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.SpotFleetRequestConfigData": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-allocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2FleetSpotAllocationStrategy"
          }
        },
        "ExcessCapacityTerminationPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-excesscapacityterminationpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "SpotFleetExcessCapacityTerminationPolicy"
          }
        },
        "IamFleetRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-iamfleetrole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "InstanceInterruptionBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-instanceinterruptionbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "SpotFleetInstanceInterruptionBehavior"
          }
        },
        "InstancePoolsToUseCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-instancepoolstousecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LaunchSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications",
          "DuplicatesAllowed": false,
          "ItemType": "SpotFleetLaunchSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "LaunchTemplateConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-launchtemplateconfigs",
          "DuplicatesAllowed": false,
          "ItemType": "LaunchTemplateConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "LoadBalancersConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-loadbalancersconfig",
          "Required": false,
          "Type": "LoadBalancersConfig",
          "UpdateType": "Immutable"
        },
        "OnDemandAllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-ondemandallocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OnDemandMaxTotalPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-ondemandmaxtotalprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OnDemandTargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-ondemandtargetcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReplaceUnhealthyInstances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-replaceunhealthyinstances",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SpotMaintenanceStrategies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-spotmaintenancestrategies",
          "Required": false,
          "Type": "SpotMaintenanceStrategies",
          "UpdateType": "Immutable"
        },
        "SpotMaxTotalPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-spotmaxtotalprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SpotPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-spotprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-targetcapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TerminateInstancesWithExpiration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-terminateinstanceswithexpiration",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "SpotFleetType"
          }
        },
        "ValidFrom": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-validfrom",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ValidUntil": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-validuntil",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.SpotFleetTagSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html",
      "Properties": {
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-spotfleettagspecification-resourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.SpotMaintenanceStrategies": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotmaintenancestrategies.html",
      "Properties": {
        "CapacityRebalance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotmaintenancestrategies.html#cfn-ec2-spotfleet-spotmaintenancestrategies-capacityrebalance",
          "Required": false,
          "Type": "SpotCapacityRebalance",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.SpotPlacement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-tenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.TargetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html#cfn-ec2-spotfleet-targetgroup-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::SpotFleet.TargetGroupsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html",
      "Properties": {
        "TargetGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html#cfn-ec2-spotfleet-targetgroupsconfig-targetgroups",
          "DuplicatesAllowed": false,
          "ItemType": "TargetGroup",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::TrafficMirrorFilterRule.TrafficMirrorPortRange": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html",
      "Properties": {
        "FromPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-fromport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ToPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-toport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::VPNConnection.VpnTunnelOptionsSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html",
      "Properties": {
        "PreSharedKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-presharedkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TunnelInsideCidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-tunnelinsidecidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        }
      }
    },
    "AWS::ECR::ReplicationConfiguration.ReplicationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationconfiguration.html",
      "Properties": {
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationconfiguration.html#cfn-ecr-replicationconfiguration-replicationconfiguration-rules",
          "ItemType": "ReplicationRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECR::ReplicationConfiguration.ReplicationDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationdestination.html",
      "Properties": {
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationdestination.html#cfn-ecr-replicationconfiguration-replicationdestination-region",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ECR::ReplicationConfiguration.ReplicationDestination.Region"
          }
        },
        "RegistryId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationdestination.html#cfn-ecr-replicationconfiguration-replicationdestination-registryid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ECR::ReplicationConfiguration.ReplicationDestination.RegistryId"
          }
        }
      }
    },
    "AWS::ECR::ReplicationConfiguration.ReplicationRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationrule.html",
      "Properties": {
        "Destinations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-replicationconfiguration-replicationrule.html#cfn-ecr-replicationconfiguration-replicationrule-destinations",
          "ItemType": "ReplicationDestination",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECR::Repository.LifecyclePolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html",
      "Properties": {
        "LifecyclePolicyText": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-lifecyclepolicytext",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ECR::Repository.LifecyclePolicy.LifecyclePolicyText"
          }
        },
        "RegistryId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-registryid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ECR::Repository.LifecyclePolicy.RegistryId"
          }
        }
      }
    },
    "AWS::ECS::CapacityProvider.AutoScalingGroupProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-autoscalinggroupprovider.html",
      "Properties": {
        "AutoScalingGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-autoscalinggroupprovider.html#cfn-ecs-capacityprovider-autoscalinggroupprovider-autoscalinggrouparn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ManagedScaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-autoscalinggroupprovider.html#cfn-ecs-capacityprovider-autoscalinggroupprovider-managedscaling",
          "Required": false,
          "Type": "ManagedScaling",
          "UpdateType": "Immutable"
        },
        "ManagedTerminationProtection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-autoscalinggroupprovider.html#cfn-ecs-capacityprovider-autoscalinggroupprovider-managedterminationprotection",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::CapacityProvider.AutoScalingGroupProvider.ManagedTerminationProtection"
          }
        }
      }
    },
    "AWS::ECS::CapacityProvider.ManagedScaling": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedscaling.html",
      "Properties": {
        "MaximumScalingStepSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedscaling.html#cfn-ecs-capacityprovider-managedscaling-maximumscalingstepsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MinimumScalingStepSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedscaling.html#cfn-ecs-capacityprovider-managedscaling-minimumscalingstepsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedscaling.html#cfn-ecs-capacityprovider-managedscaling-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::CapacityProvider.ManagedScaling.Status"
          }
        },
        "TargetCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedscaling.html#cfn-ecs-capacityprovider-managedscaling-targetcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::Cluster.CapacityProviderStrategyItem": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-capacityproviderstrategyitem.html",
      "Properties": {
        "Base": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-capacityproviderstrategyitem.html#cfn-ecs-cluster-capacityproviderstrategyitem-base",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CapacityProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-capacityproviderstrategyitem.html#cfn-ecs-cluster-capacityproviderstrategyitem-capacityprovider",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-capacityproviderstrategyitem.html#cfn-ecs-cluster-capacityproviderstrategyitem-weight",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Cluster.ClusterSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-clustersettings.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-clustersettings.html#cfn-ecs-cluster-clustersettings-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-clustersettings.html#cfn-ecs-cluster-clustersettings-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Service.AwsVpcConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html",
      "Properties": {
        "AssignPublicIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-assignpublicip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ECS::Service.AwsVpcConfiguration.AssignPublicIp"
          }
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-securitygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-subnets",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Service.CapacityProviderStrategyItem": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html",
      "Properties": {
        "Base": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-base",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CapacityProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-capacityprovider",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-weight",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Service.DeploymentCircuitBreaker": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcircuitbreaker.html",
      "Properties": {
        "Enable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcircuitbreaker.html#cfn-ecs-service-deploymentcircuitbreaker-enable",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Rollback": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcircuitbreaker.html#cfn-ecs-service-deploymentcircuitbreaker-rollback",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Service.DeploymentConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html",
      "Properties": {
        "DeploymentCircuitBreaker": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-deploymentcircuitbreaker",
          "Required": false,
          "Type": "DeploymentCircuitBreaker",
          "UpdateType": "Mutable"
        },
        "MaximumPercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-maximumpercent",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinimumHealthyPercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-minimumhealthypercent",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Service.DeploymentController": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcontroller.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcontroller.html#cfn-ecs-service-deploymentcontroller-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::Service.DeploymentController.Type"
          }
        }
      }
    },
    "AWS::ECS::Service.LoadBalancer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html",
      "Properties": {
        "ContainerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-containername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ContainerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-containerport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LoadBalancerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-loadbalancername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TargetGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-targetgrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::Service.NetworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html",
      "Properties": {
        "AwsvpcConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html#cfn-ecs-service-networkconfiguration-awsvpcconfiguration",
          "Required": false,
          "Type": "AwsVpcConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Service.PlacementConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html",
      "Properties": {
        "Expression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-expression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::Service.PlacementConstraint.Type"
          }
        }
      }
    },
    "AWS::ECS::Service.PlacementStrategy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html",
      "Properties": {
        "Field": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-field",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::Service.PlacementStrategy.Type"
          }
        }
      }
    },
    "AWS::ECS::Service.ServiceRegistry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html",
      "Properties": {
        "ContainerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-containername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ContainerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-containerport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RegistryArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-registryarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.AuthorizationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-authorizationconfig.html",
      "Properties": {
        "AccessPointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-authorizationconfig.html#cfn-ecs-taskdefinition-authorizationconfig-accesspointid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IAM": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-authorizationconfig.html#cfn-ecs-taskdefinition-authorizationconfig-iam",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::TaskDefinition.AuthorizationConfig.IAM"
          }
        }
      }
    },
    "AWS::ECS::TaskDefinition.ContainerDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html",
      "Properties": {
        "Command": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-command",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Cpu": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-cpu",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DependsOn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dependson",
          "ItemType": "ContainerDependency",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "DisableNetworking": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-disablenetworking",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DnsSearchDomains": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnssearchdomains",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "DnsServers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnsservers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "DockerLabels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockerlabels",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "DockerSecurityOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockersecurityoptions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EntryPoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-entrypoint",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environment",
          "DuplicatesAllowed": false,
          "ItemType": "KeyValuePair",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EnvironmentFiles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environmentfiles",
          "ItemType": "EnvironmentFile",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Essential": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-essential",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ExtraHosts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-extrahosts",
          "ItemType": "HostEntry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "FirelensConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-firelensconfiguration",
          "Required": false,
          "Type": "FirelensConfiguration",
          "UpdateType": "Immutable"
        },
        "HealthCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-healthcheck",
          "Required": false,
          "Type": "HealthCheck",
          "UpdateType": "Immutable"
        },
        "Hostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-hostname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Image": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-image",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Interactive": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-interactive",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Links": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-links",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "LinuxParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-linuxparameters",
          "Required": false,
          "Type": "LinuxParameters",
          "UpdateType": "Immutable"
        },
        "LogConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration",
          "Required": false,
          "Type": "LogConfiguration",
          "UpdateType": "Immutable"
        },
        "Memory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memory",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MemoryReservation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memoryreservation",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MountPoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints",
          "DuplicatesAllowed": false,
          "ItemType": "MountPoint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PortMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-portmappings",
          "DuplicatesAllowed": false,
          "ItemType": "PortMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Privileged": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-privileged",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PseudoTerminal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-pseudoterminal",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReadonlyRootFilesystem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-readonlyrootfilesystem",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RepositoryCredentials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-repositorycredentials",
          "Required": false,
          "Type": "RepositoryCredentials",
          "UpdateType": "Immutable"
        },
        "ResourceRequirements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-resourcerequirements",
          "ItemType": "ResourceRequirement",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Secrets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-secrets",
          "ItemType": "Secret",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "StartTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-starttimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StopTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-stoptimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SystemControls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-systemcontrols",
          "ItemType": "SystemControl",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Ulimits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-ulimits",
          "ItemType": "Ulimit",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "User": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-user",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VolumesFrom": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom",
          "DuplicatesAllowed": false,
          "ItemType": "VolumeFrom",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "WorkingDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-workingdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.ContainerDependency": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html",
      "Properties": {
        "Condition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-condition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ContainerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-containername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.Device": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html",
      "Properties": {
        "ContainerPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-containerpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HostPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-hostpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Permissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-permissions",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.DockerVolumeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html",
      "Properties": {
        "Autoprovision": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-autoprovision",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Driver": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-driver",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DriverOpts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-driveropts",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Labels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-labels",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-scope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.EFSVolumeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html",
      "Properties": {
        "AuthorizationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-authorizationconfig",
          "PrimitiveType": "Json",
          "Required": false,
          "Type": "AuthorizationConfig",
          "UpdateType": "Immutable"
        },
        "FilesystemId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-filesystemid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RootDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-rootdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TransitEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-transitencryption",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::TaskDefinition.EFSVolumeConfiguration.TransitEncryption"
          }
        },
        "TransitEncryptionPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-transitencryptionport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.EnvironmentFile": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-environmentfile.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-environmentfile.html#cfn-ecs-taskdefinition-environmentfile-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-environmentfile.html#cfn-ecs-taskdefinition-environmentfile-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.FirelensConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-firelensconfiguration.html",
      "Properties": {
        "Options": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-firelensconfiguration.html#cfn-ecs-taskdefinition-firelensconfiguration-options",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-firelensconfiguration.html#cfn-ecs-taskdefinition-firelensconfiguration-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.HealthCheck": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html",
      "Properties": {
        "Command": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-command",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-interval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Retries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-retries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StartPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-startperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-timeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.HostEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html",
      "Properties": {
        "Hostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-hostname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-ipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.HostVolumeProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html",
      "Properties": {
        "SourcePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html#cfn-ecs-taskdefinition-volumes-host-sourcepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.InferenceAccelerator": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-inferenceaccelerator.html",
      "Properties": {
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-inferenceaccelerator.html#cfn-ecs-taskdefinition-inferenceaccelerator-devicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DeviceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-inferenceaccelerator.html#cfn-ecs-taskdefinition-inferenceaccelerator-devicetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.KernelCapabilities": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html",
      "Properties": {
        "Add": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-add",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Drop": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-drop",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.KeyValuePair": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.LinuxParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html",
      "Properties": {
        "Capabilities": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-capabilities",
          "Required": false,
          "Type": "KernelCapabilities",
          "UpdateType": "Immutable"
        },
        "Devices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-devices",
          "ItemType": "Device",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "InitProcessEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-initprocessenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MaxSwap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-maxswap",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SharedMemorySize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-sharedmemorysize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Swappiness": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-swappiness",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tmpfs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-tmpfs",
          "ItemType": "Tmpfs",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.LogConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html",
      "Properties": {
        "LogDriver": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-logdriver",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Options": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-options",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "SecretOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-logconfiguration-secretoptions",
          "ItemType": "Secret",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.MountPoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html",
      "Properties": {
        "ContainerPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-containerpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReadOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-readonly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceVolume": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-sourcevolume",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.PortMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html",
      "Properties": {
        "ContainerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-containerport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HostPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-readonly",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-sourcevolume",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.ProxyConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html",
      "Properties": {
        "ContainerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-containername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProxyConfigurationProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-proxyconfigurationproperties",
          "DuplicatesAllowed": false,
          "ItemType": "KeyValuePair",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EcsTaskDefinitionProxyType"
          }
        }
      }
    },
    "AWS::ECS::TaskDefinition.RepositoryCredentials": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html",
      "Properties": {
        "CredentialsParameter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html#cfn-ecs-taskdefinition-repositorycredentials-credentialsparameter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.ResourceRequirement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.Secret": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html#cfn-ecs-taskdefinition-secret-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ValueFrom": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html#cfn-ecs-taskdefinition-secret-valuefrom",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.SystemControl": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html",
      "Properties": {
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-namespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.TaskDefinitionPlacementConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html",
      "Properties": {
        "Expression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-expression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.Tmpfs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html",
      "Properties": {
        "ContainerPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html#cfn-ecs-taskdefinition-tmpfs-containerpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MountOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html#cfn-ecs-taskdefinition-tmpfs-mountoptions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html#cfn-ecs-taskdefinition-tmpfs-size",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.Ulimit": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html",
      "Properties": {
        "HardLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-hardlimit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SoftLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-softlimit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.Volume": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html",
      "Properties": {
        "DockerVolumeConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volume-dockervolumeconfiguration",
          "Required": false,
          "Type": "DockerVolumeConfiguration",
          "UpdateType": "Immutable"
        },
        "EFSVolumeConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volume-efsvolumeconfiguration",
          "Required": false,
          "Type": "EFSVolumeConfiguration",
          "UpdateType": "Immutable"
        },
        "Host": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-host",
          "Required": false,
          "Type": "HostVolumeProperties",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition.VolumeFrom": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html",
      "Properties": {
        "ReadOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom-readonly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceContainer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom-sourcecontainer",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskSet.AwsVpcConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-awsvpcconfiguration.html",
      "Properties": {
        "AssignPublicIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-awsvpcconfiguration.html#cfn-ecs-taskset-awsvpcconfiguration-assignpublicip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::TaskSet.AwsVpcConfiguration.AssignPublicIp"
          }
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-awsvpcconfiguration.html#cfn-ecs-taskset-awsvpcconfiguration-securitygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-awsvpcconfiguration.html#cfn-ecs-taskset-awsvpcconfiguration-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskSet.LoadBalancer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-loadbalancer.html",
      "Properties": {
        "ContainerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-loadbalancer.html#cfn-ecs-taskset-loadbalancer-containername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ContainerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-loadbalancer.html#cfn-ecs-taskset-loadbalancer-containerport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LoadBalancerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-loadbalancer.html#cfn-ecs-taskset-loadbalancer-loadbalancername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TargetGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-loadbalancer.html#cfn-ecs-taskset-loadbalancer-targetgrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskSet.NetworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-networkconfiguration.html",
      "Properties": {
        "AwsVpcConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-networkconfiguration.html#cfn-ecs-taskset-networkconfiguration-awsvpcconfiguration",
          "Required": false,
          "Type": "AwsVpcConfiguration",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskSet.Scale": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-scale.html",
      "Properties": {
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-scale.html#cfn-ecs-taskset-scale-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ECS::TaskSet.Scale.Unit"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-scale.html#cfn-ecs-taskset-scale-value",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::TaskSet.ServiceRegistry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-serviceregistry.html",
      "Properties": {
        "ContainerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-serviceregistry.html#cfn-ecs-taskset-serviceregistry-containername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ContainerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-serviceregistry.html#cfn-ecs-taskset-serviceregistry-containerport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-serviceregistry.html#cfn-ecs-taskset-serviceregistry-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RegistryArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-serviceregistry.html#cfn-ecs-taskset-serviceregistry-registryarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EFS::AccessPoint.AccessPointTag": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-accesspointtag.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-accesspointtag.html#cfn-efs-accesspoint-accesspointtag-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EFS::AccessPoint.AccessPointTag.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-accesspointtag.html#cfn-efs-accesspoint-accesspointtag-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EFS::AccessPoint.AccessPointTag.Value"
          }
        }
      }
    },
    "AWS::EFS::AccessPoint.CreationInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html",
      "Properties": {
        "OwnerGid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html#cfn-efs-accesspoint-creationinfo-ownergid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "OwnerUid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html#cfn-efs-accesspoint-creationinfo-owneruid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Permissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html#cfn-efs-accesspoint-creationinfo-permissions",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EFS::AccessPoint.CreationInfo.Permissions"
          }
        }
      }
    },
    "AWS::EFS::AccessPoint.PosixUser": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html",
      "Properties": {
        "Gid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html#cfn-efs-accesspoint-posixuser-gid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SecondaryGids": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html#cfn-efs-accesspoint-posixuser-secondarygids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Uid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html#cfn-efs-accesspoint-posixuser-uid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EFS::AccessPoint.RootDirectory": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-rootdirectory.html",
      "Properties": {
        "CreationInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-rootdirectory.html#cfn-efs-accesspoint-rootdirectory-creationinfo",
          "Required": false,
          "Type": "CreationInfo",
          "UpdateType": "Immutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-rootdirectory.html#cfn-efs-accesspoint-rootdirectory-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EFS::AccessPoint.RootDirectory.Path"
          }
        }
      }
    },
    "AWS::EFS::FileSystem.BackupPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html",
      "Properties": {
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html#cfn-efs-filesystem-backuppolicy-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EFS::FileSystem.ElasticFileSystemTag": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html#cfn-efs-filesystem-elasticfilesystemtag-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html#cfn-efs-filesystem-elasticfilesystemtag-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EFS::FileSystem.LifecyclePolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-lifecyclepolicy.html",
      "Properties": {
        "TransitionToIA": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-lifecyclepolicy.html#cfn-efs-filesystem-lifecyclepolicy-transitiontoia",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EFSFileSystemLifecyclePolicy"
          }
        }
      }
    },
    "AWS::EKS::Cluster.EncryptionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-encryptionconfig.html",
      "Properties": {
        "Provider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-encryptionconfig.html#cfn-eks-cluster-encryptionconfig-provider",
          "Required": false,
          "Type": "Provider",
          "UpdateType": "Mutable"
        },
        "Resources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-encryptionconfig.html#cfn-eks-cluster-encryptionconfig-resources",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::Cluster.KubernetesNetworkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-kubernetesnetworkconfig.html",
      "Properties": {
        "ServiceIpv4Cidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-kubernetesnetworkconfig.html#cfn-eks-cluster-kubernetesnetworkconfig-serviceipv4cidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::Cluster.Provider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-provider.html",
      "Properties": {
        "KeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-provider.html#cfn-eks-cluster-provider-keyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::Cluster.ResourcesVpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::FargateProfile.Label": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-fargateprofile-label.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-fargateprofile-label.html#cfn-eks-fargateprofile-label-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EKS::FargateProfile.Label.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-fargateprofile-label.html#cfn-eks-fargateprofile-label-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EKS::FargateProfile.Label.Value"
          }
        }
      }
    },
    "AWS::EKS::FargateProfile.Selector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-fargateprofile-selector.html",
      "Properties": {
        "Labels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-fargateprofile-selector.html#cfn-eks-fargateprofile-selector-labels",
          "ItemType": "Label",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-fargateprofile-selector.html#cfn-eks-fargateprofile-selector-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EKS::Nodegroup.LaunchTemplateSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html#cfn-eks-nodegroup-launchtemplatespecification-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html#cfn-eks-nodegroup-launchtemplatespecification-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html#cfn-eks-nodegroup-launchtemplatespecification-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::Nodegroup.RemoteAccess": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-remoteaccess.html",
      "Properties": {
        "Ec2SshKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-remoteaccess.html#cfn-eks-nodegroup-remoteaccess-ec2sshkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SourceSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-remoteaccess.html#cfn-eks-nodegroup-remoteaccess-sourcesecuritygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EKS::Nodegroup.ScalingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-scalingconfig.html",
      "Properties": {
        "DesiredSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-scalingconfig.html#cfn-eks-nodegroup-scalingconfig-desiredsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-scalingconfig.html#cfn-eks-nodegroup-scalingconfig-maxsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-scalingconfig.html#cfn-eks-nodegroup-scalingconfig-minsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.Application": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html",
      "Properties": {
        "AdditionalInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-additionalinfo",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Args": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-args",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.AutoScalingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html",
      "Properties": {
        "Constraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-constraints",
          "Required": true,
          "Type": "ScalingConstraints",
          "UpdateType": "Mutable"
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-rules",
          "DuplicatesAllowed": false,
          "ItemType": "ScalingRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.BootstrapActionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ScriptBootstrapAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-scriptbootstrapaction",
          "Required": true,
          "Type": "ScriptBootstrapActionConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.CloudWatchAlarmDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-dimensions",
          "DuplicatesAllowed": false,
          "ItemType": "MetricDimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EvaluationPeriods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-evaluationperiods",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-namespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-period",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-statistic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Threshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-threshold",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.ComputeLimits": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html",
      "Properties": {
        "MaximumCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-maximumcapacityunits",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaximumCoreCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-maximumcorecapacityunits",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumOnDemandCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-maximumondemandcapacityunits",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinimumCapacityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-minimumcapacityunits",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UnitType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-unittype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.Configuration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html",
      "Properties": {
        "Classification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-classification",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConfigurationProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-configurationproperties",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.EbsBlockDeviceConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html",
      "Properties": {
        "VolumeSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumespecification",
          "Required": true,
          "Type": "VolumeSpecification",
          "UpdateType": "Mutable"
        },
        "VolumesPerInstance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumesperinstance",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.EbsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html",
      "Properties": {
        "EbsBlockDeviceConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsblockdeviceconfigs",
          "DuplicatesAllowed": false,
          "ItemType": "EbsBlockDeviceConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.HadoopJarStepConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html",
      "Properties": {
        "Args": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-args",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Jar": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-jar",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MainClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-mainclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StepProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-stepproperties",
          "DuplicatesAllowed": false,
          "ItemType": "KeyValue",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.InstanceFleetConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html",
      "Properties": {
        "InstanceTypeConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-instancetypeconfigs",
          "DuplicatesAllowed": false,
          "ItemType": "InstanceTypeConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "LaunchSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-launchspecifications",
          "Required": false,
          "Type": "InstanceFleetProvisioningSpecifications",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TargetOnDemandCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-targetondemandcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetSpotCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-targetspotcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html",
      "Properties": {
        "OnDemandSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-cluster-instancefleetprovisioningspecifications-ondemandspecification",
          "Required": false,
          "Type": "OnDemandProvisioningSpecification",
          "UpdateType": "Mutable"
        },
        "SpotSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-cluster-instancefleetprovisioningspecifications-spotspecification",
          "Required": false,
          "Type": "SpotProvisioningSpecification",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.InstanceGroupConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html",
      "Properties": {
        "AutoScalingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-autoscalingpolicy",
          "Required": false,
          "Type": "AutoScalingPolicy",
          "UpdateType": "Mutable"
        },
        "BidPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-bidprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EbsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-ebsconfiguration",
          "Required": false,
          "Type": "EbsConfiguration",
          "UpdateType": "Immutable"
        },
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-instancecount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EMRInstanceType"
          }
        },
        "Market": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-market",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::Cluster.InstanceTypeConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html",
      "Properties": {
        "BidPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-bidprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BidPriceAsPercentageOfOnDemandPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-bidpriceaspercentageofondemandprice",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EbsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-ebsconfiguration",
          "Required": false,
          "Type": "EbsConfiguration",
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EMRInstanceType"
          }
        },
        "WeightedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-weightedcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::Cluster.JobFlowInstancesConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html",
      "Properties": {
        "AdditionalMasterSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-additionalmastersecuritygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "AdditionalSlaveSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-additionalslavesecuritygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "CoreInstanceFleet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancefleet",
          "Required": false,
          "Type": "InstanceFleetConfig",
          "UpdateType": "Immutable"
        },
        "CoreInstanceGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancegroup",
          "Required": false,
          "Type": "InstanceGroupConfig",
          "UpdateType": "Immutable"
        },
        "Ec2KeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2keyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Ec2SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Ec2SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EmrManagedMasterSecurityGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-emrmanagedmastersecuritygroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EmrManagedSlaveSecurityGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-emrmanagedslavesecuritygroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HadoopVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-hadoopversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeepJobFlowAliveWhenNoSteps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-keepjobflowalivewhennosteps",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MasterInstanceFleet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancefleet",
          "Required": false,
          "Type": "InstanceFleetConfig",
          "UpdateType": "Immutable"
        },
        "MasterInstanceGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancegroup",
          "Required": false,
          "Type": "InstanceGroupConfig",
          "UpdateType": "Immutable"
        },
        "Placement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-placement",
          "Required": false,
          "Type": "PlacementType",
          "UpdateType": "Immutable"
        },
        "ServiceAccessSecurityGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-serviceaccesssecuritygroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TerminationProtected": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-terminationprotected",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.KerberosAttributes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html",
      "Properties": {
        "ADDomainJoinPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-addomainjoinpassword",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ADDomainJoinUser": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-addomainjoinuser",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CrossRealmTrustPrincipalPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-crossrealmtrustprincipalpassword",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KdcAdminPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-kdcadminpassword",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Realm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-realm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.KeyValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html#cfn-elasticmapreduce-cluster-keyvalue-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html#cfn-elasticmapreduce-cluster-keyvalue-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.ManagedScalingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-managedscalingpolicy.html",
      "Properties": {
        "ComputeLimits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-managedscalingpolicy.html#cfn-elasticmapreduce-cluster-managedscalingpolicy-computelimits",
          "Required": false,
          "Type": "ComputeLimits",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.MetricDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.OnDemandProvisioningSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandprovisioningspecification.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandprovisioningspecification.html#cfn-elasticmapreduce-cluster-ondemandprovisioningspecification-allocationstrategy",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.PlacementType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html#cfn-elasticmapreduce-cluster-placementtype-availabilityzone",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        }
      }
    },
    "AWS::EMR::Cluster.ScalingAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html",
      "Properties": {
        "Market": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-market",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SimpleScalingPolicyConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-simplescalingpolicyconfiguration",
          "Required": true,
          "Type": "SimpleScalingPolicyConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.ScalingConstraints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html",
      "Properties": {
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-maxcapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-mincapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.ScalingRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-action",
          "Required": true,
          "Type": "ScalingAction",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Trigger": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-trigger",
          "Required": true,
          "Type": "ScalingTrigger",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.ScalingTrigger": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html",
      "Properties": {
        "CloudWatchAlarmDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html#cfn-elasticmapreduce-cluster-scalingtrigger-cloudwatchalarmdefinition",
          "Required": true,
          "Type": "CloudWatchAlarmDefinition",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.ScriptBootstrapActionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html",
      "Properties": {
        "Args": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-args",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-path",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.SimpleScalingPolicyConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html",
      "Properties": {
        "AdjustmentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-adjustmenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CoolDown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-cooldown",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScalingAdjustment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-scalingadjustment",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.SpotProvisioningSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-allocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BlockDurationMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-blockdurationminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeoutAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-timeoutaction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeoutDurationMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-timeoutdurationminutes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.StepConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html",
      "Properties": {
        "ActionOnFailure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-actiononfailure",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HadoopJarStep": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-hadoopjarstep",
          "Required": true,
          "Type": "HadoopJarStepConfig",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster.VolumeSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html",
      "Properties": {
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-sizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-volumetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.Configuration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html",
      "Properties": {
        "Classification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-classification",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ConfigurationProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurationproperties",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html",
      "Properties": {
        "VolumeSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumespecification",
          "Required": true,
          "Type": "VolumeSpecification",
          "UpdateType": "Immutable"
        },
        "VolumesPerInstance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumesperinstance",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.EbsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html",
      "Properties": {
        "EbsBlockDeviceConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsblockdeviceconfigs",
          "DuplicatesAllowed": false,
          "ItemType": "EbsBlockDeviceConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html",
      "Properties": {
        "OnDemandSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications-ondemandspecification",
          "Required": false,
          "Type": "OnDemandProvisioningSpecification",
          "UpdateType": "Mutable"
        },
        "SpotSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications-spotspecification",
          "Required": false,
          "Type": "SpotProvisioningSpecification",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.InstanceTypeConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html",
      "Properties": {
        "BidPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-bidprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BidPriceAsPercentageOfOnDemandPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-bidpriceaspercentageofondemandprice",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EbsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-ebsconfiguration",
          "Required": false,
          "Type": "EbsConfiguration",
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EMRInstanceType"
          }
        },
        "WeightedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-weightedcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.OnDemandProvisioningSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification-allocationstrategy",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html",
      "Properties": {
        "AllocationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-allocationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BlockDurationMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-blockdurationminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeoutAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutaction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeoutDurationMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutdurationminutes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig.VolumeSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html",
      "Properties": {
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-sizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-volumetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.AutoScalingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html",
      "Properties": {
        "Constraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-constraints",
          "Required": true,
          "Type": "ScalingConstraints",
          "UpdateType": "Mutable"
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-rules",
          "DuplicatesAllowed": false,
          "ItemType": "ScalingRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.CloudWatchAlarmDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-dimensions",
          "DuplicatesAllowed": false,
          "ItemType": "MetricDimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EvaluationPeriods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-evaluationperiods",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-namespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-period",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-statistic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Threshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-threshold",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.Configuration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html",
      "Properties": {
        "Classification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-classification",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ConfigurationProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurationproperties",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html",
      "Properties": {
        "VolumeSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification",
          "Required": true,
          "Type": "VolumeSpecification",
          "UpdateType": "Mutable"
        },
        "VolumesPerInstance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumesperinstance",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.EbsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html",
      "Properties": {
        "EbsBlockDeviceConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfigs",
          "DuplicatesAllowed": false,
          "ItemType": "EbsBlockDeviceConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.MetricDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.ScalingAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html",
      "Properties": {
        "Market": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-market",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SimpleScalingPolicyConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-simplescalingpolicyconfiguration",
          "Required": true,
          "Type": "SimpleScalingPolicyConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.ScalingConstraints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html",
      "Properties": {
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-maxcapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-mincapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.ScalingRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-action",
          "Required": true,
          "Type": "ScalingAction",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Trigger": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-trigger",
          "Required": true,
          "Type": "ScalingTrigger",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.ScalingTrigger": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html",
      "Properties": {
        "CloudWatchAlarmDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html#cfn-elasticmapreduce-instancegroupconfig-scalingtrigger-cloudwatchalarmdefinition",
          "Required": true,
          "Type": "CloudWatchAlarmDefinition",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html",
      "Properties": {
        "AdjustmentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-adjustmenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CoolDown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-cooldown",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScalingAdjustment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-scalingadjustment",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig.VolumeSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html",
      "Properties": {
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-sizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-volumetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Step.HadoopJarStepConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html",
      "Properties": {
        "Args": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-args",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Jar": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-jar",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MainClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-mainclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StepProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-stepproperties",
          "DuplicatesAllowed": false,
          "ItemType": "KeyValue",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::Step.KeyValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html#cfn-elasticmapreduce-step-keyvalue-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html#cfn-elasticmapreduce-step-keyvalue-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ElastiCache::GlobalReplicationGroup.GlobalReplicationGroupMember": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-globalreplicationgroupmember.html",
      "Properties": {
        "ReplicationGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-globalreplicationgroupmember.html#cfn-elasticache-globalreplicationgroup-globalreplicationgroupmember-replicationgroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplicationGroupRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-globalreplicationgroupmember.html#cfn-elasticache-globalreplicationgroup-globalreplicationgroupmember-replicationgroupregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-globalreplicationgroupmember.html#cfn-elasticache-globalreplicationgroup-globalreplicationgroupmember-role",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ElastiCache::GlobalReplicationGroup.GlobalReplicationGroupMember.Role"
          }
        }
      }
    },
    "AWS::ElastiCache::GlobalReplicationGroup.RegionalConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-regionalconfiguration.html",
      "Properties": {
        "ReplicationGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-regionalconfiguration.html#cfn-elasticache-globalreplicationgroup-regionalconfiguration-replicationgroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplicationGroupRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-regionalconfiguration.html#cfn-elasticache-globalreplicationgroup-regionalconfiguration-replicationgroupregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReshardingConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-regionalconfiguration.html#cfn-elasticache-globalreplicationgroup-regionalconfiguration-reshardingconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "ReshardingConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::GlobalReplicationGroup.ReshardingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-reshardingconfiguration.html",
      "Properties": {
        "NodeGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-reshardingconfiguration.html#cfn-elasticache-globalreplicationgroup-reshardingconfiguration-nodegroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredAvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-globalreplicationgroup-reshardingconfiguration.html#cfn-elasticache-globalreplicationgroup-reshardingconfiguration-preferredavailabilityzones",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::ReplicationGroup.NodeGroupConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html",
      "Properties": {
        "NodeGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-nodegroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "PrimaryAvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-primaryavailabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReplicaAvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicaavailabilityzones",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ReplicaCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicacount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Slots": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-slots",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html",
      "Properties": {
        "ServiceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-servicerole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "VersionLifecycleConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-versionlifecycleconfig",
          "Required": false,
          "Type": "ApplicationVersionLifecycleConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Application.ApplicationVersionLifecycleConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html",
      "Properties": {
        "MaxAgeRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxagerule",
          "Required": false,
          "Type": "MaxAgeRule",
          "UpdateType": "Mutable"
        },
        "MaxCountRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxcountrule",
          "Required": false,
          "Type": "MaxCountRule",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Application.MaxAgeRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html",
      "Properties": {
        "DeleteSourceFromS3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html#cfn-elasticbeanstalk-application-maxagerule-deletesourcefroms3",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html#cfn-elasticbeanstalk-application-maxagerule-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxAgeInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html#cfn-elasticbeanstalk-application-maxagerule-maxageindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Application.MaxCountRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html",
      "Properties": {
        "DeleteSourceFromS3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-deletesourcefroms3",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-maxcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::ApplicationVersion.SourceBundle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html",
      "Properties": {
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::ConfigurationTemplate.ConfigurationOptionSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html",
      "Properties": {
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OptionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-optionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-resourcename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::ConfigurationTemplate.SourceConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-templatename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Environment.OptionSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html",
      "Properties": {
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OptionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-optionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-elasticbeanstalk-environment-optionsetting-resourcename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Environment.Tier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.AccessLoggingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html",
      "Properties": {
        "EmitInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-emitinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.AppCookieStickinessPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html",
      "Properties": {
        "CookieName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-cookiename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionDrainingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-timeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html",
      "Properties": {
        "IdleTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html#cfn-elb-connectionsettings-idletimeout",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.HealthCheck": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html",
      "Properties": {
        "HealthyThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-healthythreshold",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-interval",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-target",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-timeout",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UnhealthyThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-unhealthythreshold",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.LBCookieStickinessPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html",
      "Properties": {
        "CookieExpirationPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-cookieexpirationperiod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-policyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.Listeners": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html",
      "Properties": {
        "InstancePort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-instanceport",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "LoadBalancerPort"
          }
        },
        "InstanceProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-instanceprotocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoadBalancerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-loadbalancerport",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "LoadBalancerPort"
          }
        },
        "PolicyNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-policynames",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SSLCertificateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-sslcertificateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer.Policies": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-attributes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "Json",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InstancePorts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-instanceports",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LoadBalancerPorts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-loadbalancerports",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PolicyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-policytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html",
      "Properties": {
        "AuthenticateCognitoConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-authenticatecognitoconfig",
          "Required": false,
          "Type": "AuthenticateCognitoConfig",
          "UpdateType": "Mutable"
        },
        "AuthenticateOidcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-authenticateoidcconfig",
          "Required": false,
          "Type": "AuthenticateOidcConfig",
          "UpdateType": "Mutable"
        },
        "FixedResponseConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-fixedresponseconfig",
          "Required": false,
          "Type": "FixedResponseConfig",
          "UpdateType": "Mutable"
        },
        "ForwardConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-forwardconfig",
          "Required": false,
          "Type": "ForwardConfig",
          "UpdateType": "Mutable"
        },
        "Order": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-order",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RedirectConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-redirectconfig",
          "Required": false,
          "Type": "RedirectConfig",
          "UpdateType": "Mutable"
        },
        "TargetGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-targetgrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-action.html#cfn-elasticloadbalancingv2-listener-action-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.AuthenticateCognitoConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html",
      "Properties": {
        "AuthenticationRequestExtraParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-authenticationrequestextraparams",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "OnUnauthenticatedRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-onunauthenticatedrequest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-scope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionCookieName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-sessioncookiename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-sessiontimeout",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-userpoolarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserPoolClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-userpoolclientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserPoolDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-userpooldomain",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.AuthenticateOidcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html",
      "Properties": {
        "AuthenticationRequestExtraParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-authenticationrequestextraparams",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "AuthorizationEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-authorizationendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Issuer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-issuer",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OnUnauthenticatedRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-onunauthenticatedrequest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-scope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionCookieName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-sessioncookiename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-sessiontimeout",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-tokenendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserInfoEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-userinfoendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.Certificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificate.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificate.html#cfn-elasticloadbalancingv2-listener-certificate-certificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.FixedResponseConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html",
      "Properties": {
        "ContentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-contenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MessageBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-messagebody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-statuscode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.ForwardConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-forwardconfig.html",
      "Properties": {
        "TargetGroupStickinessConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-forwardconfig.html#cfn-elasticloadbalancingv2-listener-forwardconfig-targetgroupstickinessconfig",
          "Required": false,
          "Type": "TargetGroupStickinessConfig",
          "UpdateType": "Mutable"
        },
        "TargetGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-forwardconfig.html#cfn-elasticloadbalancingv2-listener-forwardconfig-targetgroups",
          "DuplicatesAllowed": false,
          "ItemType": "TargetGroupTuple",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.RedirectConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html",
      "Properties": {
        "Host": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-host",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-port",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Query": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-query",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-statuscode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.TargetGroupStickinessConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-targetgroupstickinessconfig.html",
      "Properties": {
        "DurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-targetgroupstickinessconfig.html#cfn-elasticloadbalancingv2-listener-targetgroupstickinessconfig-durationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-targetgroupstickinessconfig.html#cfn-elasticloadbalancingv2-listener-targetgroupstickinessconfig-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener.TargetGroupTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-targetgrouptuple.html",
      "Properties": {
        "TargetGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-targetgrouptuple.html#cfn-elasticloadbalancingv2-listener-targetgrouptuple-targetgrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-targetgrouptuple.html#cfn-elasticloadbalancingv2-listener-targetgrouptuple-weight",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerCertificate.Certificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html",
      "Properties": {
        "AuthenticateCognitoConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticatecognitoconfig",
          "Required": false,
          "Type": "AuthenticateCognitoConfig",
          "UpdateType": "Mutable"
        },
        "AuthenticateOidcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticateoidcconfig",
          "Required": false,
          "Type": "AuthenticateOidcConfig",
          "UpdateType": "Mutable"
        },
        "FixedResponseConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-fixedresponseconfig",
          "Required": false,
          "Type": "FixedResponseConfig",
          "UpdateType": "Mutable"
        },
        "ForwardConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-forwardconfig",
          "Required": false,
          "Type": "ForwardConfig",
          "UpdateType": "Mutable"
        },
        "Order": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-order",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RedirectConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-redirectconfig",
          "Required": false,
          "Type": "RedirectConfig",
          "UpdateType": "Mutable"
        },
        "TargetGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-targetgrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html#cfn-elasticloadbalancingv2-listenerrule-action-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateCognitoConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html",
      "Properties": {
        "AuthenticationRequestExtraParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-authenticationrequestextraparams",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "OnUnauthenticatedRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-onunauthenticatedrequest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-scope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionCookieName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-sessioncookiename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-sessiontimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-userpoolarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserPoolClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-userpoolclientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UserPoolDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-userpooldomain",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateOidcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html",
      "Properties": {
        "AuthenticationRequestExtraParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-authenticationrequestextraparams",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "AuthorizationEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-authorizationendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Issuer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-issuer",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OnUnauthenticatedRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-onunauthenticatedrequest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-scope",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionCookieName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-sessioncookiename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-sessiontimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-tokenendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UseExistingClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-useexistingclientsecret",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserInfoEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-userinfoendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.FixedResponseConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html",
      "Properties": {
        "ContentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-contenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MessageBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-messagebody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-statuscode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.ForwardConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-forwardconfig.html",
      "Properties": {
        "TargetGroupStickinessConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-forwardconfig.html#cfn-elasticloadbalancingv2-listenerrule-forwardconfig-targetgroupstickinessconfig",
          "Required": false,
          "Type": "TargetGroupStickinessConfig",
          "UpdateType": "Mutable"
        },
        "TargetGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-forwardconfig.html#cfn-elasticloadbalancingv2-listenerrule-forwardconfig-targetgroups",
          "DuplicatesAllowed": false,
          "ItemType": "TargetGroupTuple",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.HostHeaderConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html",
      "Properties": {
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-hostheaderconfig-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.HttpHeaderConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html",
      "Properties": {
        "HttpHeaderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-httpheadername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.HttpRequestMethodConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html",
      "Properties": {
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html#cfn-elasticloadbalancingv2-listenerrule-httprequestmethodconfig-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.PathPatternConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html",
      "Properties": {
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html#cfn-elasticloadbalancingv2-listenerrule-pathpatternconfig-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html",
      "Properties": {
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html#cfn-elasticloadbalancingv2-listenerrule-querystringconfig-values",
          "DuplicatesAllowed": false,
          "ItemType": "QueryStringKeyValue",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringKeyValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.RedirectConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html",
      "Properties": {
        "Host": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-host",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-port",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Query": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-query",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-statuscode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.RuleCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html",
      "Properties": {
        "Field": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-field",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostHeaderConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-hostheaderconfig",
          "Required": false,
          "Type": "HostHeaderConfig",
          "UpdateType": "Mutable"
        },
        "HttpHeaderConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httpheaderconfig",
          "Required": false,
          "Type": "HttpHeaderConfig",
          "UpdateType": "Mutable"
        },
        "HttpRequestMethodConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httprequestmethodconfig",
          "Required": false,
          "Type": "HttpRequestMethodConfig",
          "UpdateType": "Mutable"
        },
        "PathPatternConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-pathpatternconfig",
          "Required": false,
          "Type": "PathPatternConfig",
          "UpdateType": "Mutable"
        },
        "QueryStringConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-querystringconfig",
          "Required": false,
          "Type": "QueryStringConfig",
          "UpdateType": "Mutable"
        },
        "SourceIpConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-sourceipconfig",
          "Required": false,
          "Type": "SourceIpConfig",
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.SourceIpConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html",
      "Properties": {
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html#cfn-elasticloadbalancingv2-listenerrule-sourceipconfig-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.TargetGroupStickinessConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgroupstickinessconfig.html",
      "Properties": {
        "DurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgroupstickinessconfig.html#cfn-elasticloadbalancingv2-listenerrule-targetgroupstickinessconfig-durationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgroupstickinessconfig.html#cfn-elasticloadbalancingv2-listenerrule-targetgroupstickinessconfig-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.TargetGroupTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgrouptuple.html",
      "Properties": {
        "TargetGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgrouptuple.html#cfn-elasticloadbalancingv2-listenerrule-targetgrouptuple-targetgrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgrouptuple.html#cfn-elasticloadbalancingv2-listenerrule-targetgrouptuple-weight",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::LoadBalancer.LoadBalancerAttribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::LoadBalancer.SubnetMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html",
      "Properties": {
        "AllocationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-allocationid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IPv6Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-ipv6address",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateIPv4Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-privateipv4address",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::TargetGroup.Matcher": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html",
      "Properties": {
        "GrpcCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html#cfn-elasticloadbalancingv2-targetgroup-matcher-grpccode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html#cfn-elasticloadbalancingv2-targetgroup-matcher-httpcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::TargetGroup.TargetDescription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AvailabilityZoneWithAll"
          }
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::TargetGroup.TargetGroupAttribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.AdvancedSecurityOptionsInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InternalUserDatabaseEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-internaluserdatabaseenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterUserOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-masteruseroptions",
          "Required": false,
          "Type": "MasterUserOptions",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.CognitoOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdentityPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-identitypoolid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-userpoolid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.DomainEndpointOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html",
      "Properties": {
        "CustomEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-customendpoint",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomEndpointCertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-customendpointcertificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomEndpointEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-customendpointenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnforceHTTPS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-enforcehttps",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TLSSecurityPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-tlssecuritypolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.EBSOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html",
      "Properties": {
        "EBSEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-ebsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.ElasticsearchClusterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html",
      "Properties": {
        "DedicatedMasterCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastercount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DedicatedMasterEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmasterenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DedicatedMasterType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instancecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instnacetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "ElasticsearchInstanceType"
          }
        },
        "WarmCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-warmcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WarmEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-warmenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WarmType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-warmtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ZoneAwarenessConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-zoneawarenessconfig",
          "Required": false,
          "Type": "ZoneAwarenessConfig",
          "UpdateType": "Mutable"
        },
        "ZoneAwarenessEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-zoneawarenessenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.EncryptionAtRestOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.LogPublishingOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-logpublishingoption.html",
      "Properties": {
        "CloudWatchLogsLogGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-logpublishingoption.html#cfn-elasticsearch-domain-logpublishingoption-cloudwatchlogsloggrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-logpublishingoption.html#cfn-elasticsearch-domain-logpublishingoption-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.MasterUserOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html",
      "Properties": {
        "MasterUserARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masteruserarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterUserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masterusername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterUserPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masteruserpassword",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.SnapshotOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html",
      "Properties": {
        "AutomatedSnapshotStartHour": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html#cfn-elasticsearch-domain-snapshotoptions-automatedsnapshotstarthour",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.VPCOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-securitygroupids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Elasticsearch::Domain.ZoneAwarenessConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html",
      "Properties": {
        "AvailabilityZoneCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html#cfn-elasticsearch-domain-zoneawarenessconfig-availabilityzonecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::EventBusPolicy.Condition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html#cfn-events-eventbuspolicy-condition-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Events::EventBusPolicy.Condition.Key"
          }
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html#cfn-events-eventbuspolicy-condition-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Events::EventBusPolicy.Condition.Type"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html#cfn-events-eventbuspolicy-condition-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.AwsVpcConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html",
      "Properties": {
        "AssignPublicIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html#cfn-events-rule-awsvpcconfiguration-assignpublicip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html#cfn-events-rule-awsvpcconfiguration-securitygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html#cfn-events-rule-awsvpcconfiguration-subnets",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.BatchArrayProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batcharrayproperties.html",
      "Properties": {
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batcharrayproperties.html#cfn-events-rule-batcharrayproperties-size",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.BatchParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batchparameters.html",
      "Properties": {
        "ArrayProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batchparameters.html#cfn-events-rule-batchparameters-arrayproperties",
          "Required": false,
          "Type": "BatchArrayProperties",
          "UpdateType": "Mutable"
        },
        "JobDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batchparameters.html#cfn-events-rule-batchparameters-jobdefinition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "JobName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batchparameters.html#cfn-events-rule-batchparameters-jobname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RetryStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batchparameters.html#cfn-events-rule-batchparameters-retrystrategy",
          "Required": false,
          "Type": "BatchRetryStrategy",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.BatchRetryStrategy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batchretrystrategy.html",
      "Properties": {
        "Attempts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-batchretrystrategy.html#cfn-events-rule-batchretrystrategy-attempts",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.DeadLetterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html#cfn-events-rule-deadletterconfig-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.EcsParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html",
      "Properties": {
        "Group": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-group",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-launchtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-networkconfiguration",
          "Required": false,
          "Type": "NetworkConfiguration",
          "UpdateType": "Mutable"
        },
        "PlatformVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-platformversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TaskCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-taskcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TaskDefinitionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-taskdefinitionarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.HttpParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-httpparameters.html",
      "Properties": {
        "HeaderParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-httpparameters.html#cfn-events-rule-httpparameters-headerparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "PathParameterValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-httpparameters.html#cfn-events-rule-httpparameters-pathparametervalues",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "QueryStringParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-httpparameters.html#cfn-events-rule-httpparameters-querystringparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.InputTransformer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html",
      "Properties": {
        "InputPathsMap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html#cfn-events-rule-inputtransformer-inputpathsmap",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "InputTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html#cfn-events-rule-inputtransformer-inputtemplate",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.KinesisParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html",
      "Properties": {
        "PartitionKeyPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html#cfn-events-rule-kinesisparameters-partitionkeypath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.NetworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html",
      "Properties": {
        "AwsVpcConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html#cfn-events-rule-networkconfiguration-awsvpcconfiguration",
          "Required": false,
          "Type": "AwsVpcConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.RedshiftDataParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-redshiftdataparameters.html",
      "Properties": {
        "Database": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-redshiftdataparameters.html#cfn-events-rule-redshiftdataparameters-database",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DbUser": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-redshiftdataparameters.html#cfn-events-rule-redshiftdataparameters-dbuser",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretManagerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-redshiftdataparameters.html#cfn-events-rule-redshiftdataparameters-secretmanagerarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Sql": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-redshiftdataparameters.html#cfn-events-rule-redshiftdataparameters-sql",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StatementName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-redshiftdataparameters.html#cfn-events-rule-redshiftdataparameters-statementname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WithEvent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-redshiftdataparameters.html#cfn-events-rule-redshiftdataparameters-withevent",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.RetryPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-retrypolicy.html",
      "Properties": {
        "MaximumEventAgeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-retrypolicy.html#cfn-events-rule-retrypolicy-maximumeventageinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumRetryAttempts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-retrypolicy.html#cfn-events-rule-retrypolicy-maximumretryattempts",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.RunCommandParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html",
      "Properties": {
        "RunCommandTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html#cfn-events-rule-runcommandparameters-runcommandtargets",
          "DuplicatesAllowed": false,
          "ItemType": "RunCommandTarget",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.RunCommandTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-values",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.SqsParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html",
      "Properties": {
        "MessageGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html#cfn-events-rule-sqsparameters-messagegroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::Rule.Target": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "BatchParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-batchparameters",
          "Required": false,
          "Type": "BatchParameters",
          "UpdateType": "Mutable"
        },
        "DeadLetterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig",
          "Required": false,
          "Type": "DeadLetterConfig",
          "UpdateType": "Mutable"
        },
        "EcsParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-ecsparameters",
          "Required": false,
          "Type": "EcsParameters",
          "UpdateType": "Mutable"
        },
        "HttpParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-httpparameters",
          "Required": false,
          "Type": "HttpParameters",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Input": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputTransformer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputtransformer",
          "Required": false,
          "Type": "InputTransformer",
          "UpdateType": "Mutable"
        },
        "KinesisParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-kinesisparameters",
          "Required": false,
          "Type": "KinesisParameters",
          "UpdateType": "Mutable"
        },
        "RedshiftDataParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-redshiftdataparameters",
          "Required": false,
          "Type": "RedshiftDataParameters",
          "UpdateType": "Mutable"
        },
        "RetryPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy",
          "Required": false,
          "Type": "RetryPolicy",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RunCommandParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-runcommandparameters",
          "Required": false,
          "Type": "RunCommandParameters",
          "UpdateType": "Mutable"
        },
        "SqsParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-sqsparameters",
          "Required": false,
          "Type": "SqsParameters",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::FMS::Policy.IEMap": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-iemap.html",
      "Properties": {
        "ACCOUNT": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-iemap.html#cfn-fms-policy-iemap-account",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.IEMap.ACCOUNT"
          }
        },
        "ORGUNIT": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-iemap.html#cfn-fms-policy-iemap-orgunit",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.IEMap.ORGUNIT"
          }
        }
      }
    },
    "AWS::FMS::Policy.PolicyTag": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-policytag.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-policytag.html#cfn-fms-policy-policytag-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.PolicyTag.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-policytag.html#cfn-fms-policy-policytag-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.PolicyTag.Value"
          }
        }
      }
    },
    "AWS::FMS::Policy.ResourceTag": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-resourcetag.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-resourcetag.html#cfn-fms-policy-resourcetag-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.ResourceTag.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-resourcetag.html#cfn-fms-policy-resourcetag-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::FSx::FileSystem.LustreConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html",
      "Properties": {
        "AutoImportPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-autoimportpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AutomaticBackupRetentionDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-automaticbackupretentiondays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CopyTagsToBackups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-copytagstobackups",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DailyAutomaticBackupStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-dailyautomaticbackupstarttime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeploymentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-deploymenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DriveCacheType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-drivecachetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ExportPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-exportpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ImportPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-importpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ImportedFileChunkSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-importedfilechunksize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PerUnitStorageThroughput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-perunitstoragethroughput",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "WeeklyMaintenanceStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-weeklymaintenancestarttime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::FSx::FileSystem.SelfManagedActiveDirectoryConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html",
      "Properties": {
        "DnsIps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-dnsips",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-domainname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "FileSystemAdministratorsGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-filesystemadministratorsgroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OrganizationalUnitDistinguishedName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-organizationalunitdistinguishedname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-password",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::FSx::FileSystem.WindowsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html",
      "Properties": {
        "ActiveDirectoryId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-activedirectoryid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Aliases": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-aliases",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AutomaticBackupRetentionDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-automaticbackupretentiondays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CopyTagsToBackups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-copytagstobackups",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DailyAutomaticBackupStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-dailyautomaticbackupstarttime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeploymentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-deploymenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PreferredSubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-preferredsubnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SelfManagedActiveDirectoryConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration",
          "Required": false,
          "Type": "SelfManagedActiveDirectoryConfiguration",
          "UpdateType": "Mutable"
        },
        "ThroughputCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-throughputcapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "WeeklyMaintenanceStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-weeklymaintenancestarttime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Alias.RoutingStrategy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html",
      "Properties": {
        "FleetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-fleetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::Alias.RoutingStrategy.FleetId"
          }
        },
        "Message": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-message",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::Alias.RoutingStrategy.Type"
          }
        }
      }
    },
    "AWS::GameLift::Build.S3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-object-verison",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GameLift::Fleet.CertificateConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-certificateconfiguration.html",
      "Properties": {
        "CertificateType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-certificateconfiguration.html#cfn-gamelift-fleet-certificateconfiguration-certificatetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GameLift::Fleet.IpPermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html",
      "Properties": {
        "FromPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-fromport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IpRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-iprange",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ToPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-toport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Fleet.ResourceCreationLimitPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-resourcecreationlimitpolicy.html",
      "Properties": {
        "NewGameSessionsPerCreator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-resourcecreationlimitpolicy.html#cfn-gamelift-fleet-resourcecreationlimitpolicy-newgamesessionspercreator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PolicyPeriodInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-resourcecreationlimitpolicy.html#cfn-gamelift-fleet-resourcecreationlimitpolicy-policyperiodinminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Fleet.RuntimeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-runtimeconfiguration.html",
      "Properties": {
        "GameSessionActivationTimeoutSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-runtimeconfiguration.html#cfn-gamelift-fleet-runtimeconfiguration-gamesessionactivationtimeoutseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxConcurrentGameSessionActivations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-runtimeconfiguration.html#cfn-gamelift-fleet-runtimeconfiguration-maxconcurrentgamesessionactivations",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServerProcesses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-runtimeconfiguration.html#cfn-gamelift-fleet-runtimeconfiguration-serverprocesses",
          "DuplicatesAllowed": false,
          "ItemType": "ServerProcess",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Fleet.ServerProcess": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-serverprocess.html",
      "Properties": {
        "ConcurrentExecutions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-serverprocess.html#cfn-gamelift-fleet-serverprocess-concurrentexecutions",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LaunchPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-serverprocess.html#cfn-gamelift-fleet-serverprocess-launchpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-serverprocess.html#cfn-gamelift-fleet-serverprocess-parameters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::GameServerGroup.AutoScalingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-autoscalingpolicy.html",
      "Properties": {
        "EstimatedInstanceWarmup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-autoscalingpolicy.html#cfn-gamelift-gameservergroup-autoscalingpolicy-estimatedinstancewarmup",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetTrackingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-autoscalingpolicy.html#cfn-gamelift-gameservergroup-autoscalingpolicy-targettrackingconfiguration",
          "Required": true,
          "Type": "TargetTrackingConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::GameServerGroup.InstanceDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-instancedefinition.html",
      "Properties": {
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-instancedefinition.html#cfn-gamelift-gameservergroup-instancedefinition-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "WeightedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-instancedefinition.html#cfn-gamelift-gameservergroup-instancedefinition-weightedcapacity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::GameServerGroup.LaunchTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html",
      "Properties": {
        "LaunchTemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html#cfn-gamelift-gameservergroup-launchtemplate-launchtemplateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html#cfn-gamelift-gameservergroup-launchtemplate-launchtemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html#cfn-gamelift-gameservergroup-launchtemplate-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::GameServerGroup.TargetTrackingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-targettrackingconfiguration.html",
      "Properties": {
        "TargetValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-targettrackingconfiguration.html#cfn-gamelift-gameservergroup-targettrackingconfiguration-targetvalue",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::GameSessionQueue.Destination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-destination.html",
      "Properties": {
        "DestinationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-destination.html#cfn-gamelift-gamesessionqueue-destination-destinationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::GameSessionQueue.PlayerLatencyPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-playerlatencypolicy.html",
      "Properties": {
        "MaximumIndividualPlayerLatencyMilliseconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-playerlatencypolicy.html#cfn-gamelift-gamesessionqueue-playerlatencypolicy-maximumindividualplayerlatencymilliseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PolicyDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-playerlatencypolicy.html#cfn-gamelift-gamesessionqueue-playerlatencypolicy-policydurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::MatchmakingConfiguration.GameProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-matchmakingconfiguration-gameproperty.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-matchmakingconfiguration-gameproperty.html#cfn-gamelift-matchmakingconfiguration-gameproperty-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-matchmakingconfiguration-gameproperty.html#cfn-gamelift-matchmakingconfiguration-gameproperty-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Script.S3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-script-s3location.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-script-s3location.html#cfn-gamelift-script-s3location-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-script-s3location.html#cfn-gamelift-script-s3location-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-script-s3location.html#cfn-gamelift-script-s3location-objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-script-s3location.html#cfn-gamelift-script-s3location-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GlobalAccelerator::EndpointGroup.EndpointConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-endpointgroup-endpointconfiguration.html",
      "Properties": {
        "ClientIPPreservationEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-endpointgroup-endpointconfiguration.html#cfn-globalaccelerator-endpointgroup-endpointconfiguration-clientippreservationenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-endpointgroup-endpointconfiguration.html#cfn-globalaccelerator-endpointgroup-endpointconfiguration-endpointid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-endpointgroup-endpointconfiguration.html#cfn-globalaccelerator-endpointgroup-endpointconfiguration-weight",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GlobalAccelerator::EndpointGroup.PortOverride": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-endpointgroup-portoverride.html",
      "Properties": {
        "EndpointPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-endpointgroup-portoverride.html#cfn-globalaccelerator-endpointgroup-portoverride-endpointport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ListenerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-endpointgroup-portoverride.html#cfn-globalaccelerator-endpointgroup-portoverride-listenerport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GlobalAccelerator::Listener.PortRange": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-listener-portrange.html",
      "Properties": {
        "FromPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-listener-portrange.html#cfn-globalaccelerator-listener-portrange-fromport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ToPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-globalaccelerator-listener-portrange.html#cfn-globalaccelerator-listener-portrange-toport",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Classifier.CsvClassifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html",
      "Properties": {
        "AllowSingleColumn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-allowsinglecolumn",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ContainsHeader": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-containsheader",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Delimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-delimiter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisableValueTrimming": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-disablevaluetrimming",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Header": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-header",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "QuoteSymbol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-quotesymbol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Classifier.GrokClassifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html",
      "Properties": {
        "Classification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-classification",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "CustomPatterns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-custompatterns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GrokPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-grokpattern",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::Classifier.JsonClassifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html",
      "Properties": {
        "JsonPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-jsonpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::Classifier.XMLClassifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html",
      "Properties": {
        "Classification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html#cfn-glue-classifier-xmlclassifier-classification",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html#cfn-glue-classifier-xmlclassifier-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RowTag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html#cfn-glue-classifier-xmlclassifier-rowtag",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Connection.ConnectionInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html",
      "Properties": {
        "ConnectionProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-connectionproperties",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-connectiontype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Connection.ConnectionInput.ConnectionType"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MatchCriteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-matchcriteria",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PhysicalConnectionRequirements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-physicalconnectionrequirements",
          "Required": false,
          "Type": "PhysicalConnectionRequirements",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Connection.PhysicalConnectionRequirements": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "SecurityGroupIdList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-securitygroupidlist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Crawler.CatalogTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-catalogtarget.html",
      "Properties": {
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-catalogtarget.html#cfn-glue-crawler-catalogtarget-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-catalogtarget.html#cfn-glue-crawler-catalogtarget-tables",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Crawler.DynamoDBTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-dynamodbtarget.html",
      "Properties": {
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-dynamodbtarget.html#cfn-glue-crawler-dynamodbtarget-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Crawler.JdbcTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html",
      "Properties": {
        "ConnectionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-connectionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Exclusions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-exclusions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Crawler.S3Target": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html",
      "Properties": {
        "ConnectionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html#cfn-glue-crawler-s3target-connectionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Exclusions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html#cfn-glue-crawler-s3target-exclusions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html#cfn-glue-crawler-s3target-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Crawler.Schedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html",
      "Properties": {
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html#cfn-glue-crawler-schedule-scheduleexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Crawler.SchemaChangePolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html",
      "Properties": {
        "DeleteBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-deletebehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Crawler.SchemaChangePolicy.DeleteBehavior"
          }
        },
        "UpdateBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-updatebehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Crawler.SchemaChangePolicy.UpdateBehavior"
          }
        }
      }
    },
    "AWS::Glue::Crawler.Targets": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html",
      "Properties": {
        "CatalogTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-catalogtargets",
          "ItemType": "CatalogTarget",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DynamoDBTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-dynamodbtargets",
          "ItemType": "DynamoDBTarget",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "JdbcTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-jdbctargets",
          "ItemType": "JdbcTarget",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "S3Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-s3targets",
          "ItemType": "S3Target",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::DataCatalogEncryptionSettings.ConnectionPasswordEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReturnConnectionPasswordEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-returnconnectionpasswordencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::DataCatalogEncryptionSettings.DataCatalogEncryptionSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html",
      "Properties": {
        "ConnectionPasswordEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-connectionpasswordencryption",
          "Required": false,
          "Type": "ConnectionPasswordEncryption",
          "UpdateType": "Mutable"
        },
        "EncryptionAtRest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-encryptionatrest",
          "Required": false,
          "Type": "EncryptionAtRest",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::DataCatalogEncryptionSettings.EncryptionAtRest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html",
      "Properties": {
        "CatalogEncryptionMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-catalogencryptionmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SseAwsKmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-sseawskmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Database.DatabaseIdentifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseidentifier.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseidentifier.html#cfn-glue-database-databaseidentifier-catalogid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseidentifier.html#cfn-glue-database-databaseidentifier-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Database.DatabaseInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LocationUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-locationuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetDatabase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-targetdatabase",
          "Required": false,
          "Type": "DatabaseIdentifier",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Job.ConnectionsList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html",
      "Properties": {
        "Connections": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html#cfn-glue-job-connectionslist-connections",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Job.ExecutionProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html",
      "Properties": {
        "MaxConcurrentRuns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html#cfn-glue-job-executionproperty-maxconcurrentruns",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Job.JobCommand": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html#cfn-glue-job-jobcommand-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PythonVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html#cfn-glue-job-jobcommand-pythonversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScriptLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html#cfn-glue-job-jobcommand-scriptlocation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Job.NotificationProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html",
      "Properties": {
        "NotifyDelayAfter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html#cfn-glue-job-notificationproperty-notifydelayafter",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::MLTransform.FindMatchesParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html",
      "Properties": {
        "AccuracyCostTradeoff": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-accuracycosttradeoff",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnforceProvidedLabels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-enforceprovidedlabels",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrecisionRecallTradeoff": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-precisionrecalltradeoff",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrimaryKeyColumnName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-primarykeycolumnname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::MLTransform.GlueTables": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-catalogid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-connectionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-databasename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-tablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::MLTransform.InputRecordTables": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html",
      "Properties": {
        "GlueTables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html#cfn-glue-mltransform-inputrecordtables-gluetables",
          "ItemType": "GlueTables",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::MLTransform.MLUserDataEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformencryption-mluserdataencryption.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformencryption-mluserdataencryption.html#cfn-glue-mltransform-transformencryption-mluserdataencryption-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MLUserDataEncryptionMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformencryption-mluserdataencryption.html#cfn-glue-mltransform-transformencryption-mluserdataencryption-mluserdataencryptionmode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::MLTransform.TransformEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformencryption.html",
      "Properties": {
        "MLUserDataEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformencryption.html#cfn-glue-mltransform-transformencryption-mluserdataencryption",
          "Required": false,
          "Type": "MLUserDataEncryption",
          "UpdateType": "Mutable"
        },
        "TaskRunSecurityConfigurationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformencryption.html#cfn-glue-mltransform-transformencryption-taskrunsecurityconfigurationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::MLTransform.TransformParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html",
      "Properties": {
        "FindMatchesParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters",
          "Required": false,
          "Type": "FindMatchesParameters",
          "UpdateType": "Mutable"
        },
        "TransformType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-transformtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition.Column": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html#cfn-glue-partition-column-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html#cfn-glue-partition-column-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html#cfn-glue-partition-column-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition.Order": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-order.html",
      "Properties": {
        "Column": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-order.html#cfn-glue-partition-order-column",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SortOrder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-order.html#cfn-glue-partition-order-sortorder",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition.PartitionInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html",
      "Properties": {
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StorageDescriptor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-storagedescriptor",
          "Required": false,
          "Type": "StorageDescriptor",
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-values",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::Partition.SchemaId": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemaid.html",
      "Properties": {
        "RegistryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemaid.html#cfn-glue-partition-schemaid-registryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemaid.html#cfn-glue-partition-schemaid-schemaarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemaid.html#cfn-glue-partition-schemaid-schemaname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition.SchemaReference": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemareference.html",
      "Properties": {
        "SchameVersionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemareference.html#cfn-glue-partition-schemareference-schameversionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemareference.html#cfn-glue-partition-schemareference-schemaid",
          "Required": false,
          "Type": "SchemaId",
          "UpdateType": "Mutable"
        },
        "SchemaVersionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-schemareference.html#cfn-glue-partition-schemareference-schemaversionnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition.SerdeInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html#cfn-glue-partition-serdeinfo-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html#cfn-glue-partition-serdeinfo-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SerializationLibrary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html#cfn-glue-partition-serdeinfo-serializationlibrary",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition.SkewedInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html",
      "Properties": {
        "SkewedColumnNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html#cfn-glue-partition-skewedinfo-skewedcolumnnames",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SkewedColumnValueLocationMaps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html#cfn-glue-partition-skewedinfo-skewedcolumnvaluelocationmaps",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SkewedColumnValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html#cfn-glue-partition-skewedinfo-skewedcolumnvalues",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition.StorageDescriptor": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html",
      "Properties": {
        "BucketColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-bucketcolumns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Columns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-columns",
          "ItemType": "Column",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Compressed": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-compressed",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-inputformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumberOfBuckets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-numberofbuckets",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-outputformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaReference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-schemareference",
          "Required": false,
          "Type": "SchemaReference",
          "UpdateType": "Mutable"
        },
        "SerdeInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-serdeinfo",
          "Required": false,
          "Type": "SerdeInfo",
          "UpdateType": "Mutable"
        },
        "SkewedInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-skewedinfo",
          "Required": false,
          "Type": "SkewedInfo",
          "UpdateType": "Mutable"
        },
        "SortColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-sortcolumns",
          "ItemType": "Order",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StoredAsSubDirectories": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-storedassubdirectories",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Schema.Registry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schema-registry.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schema-registry.html#cfn-glue-schema-registry-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::Schema.Registry.Arn"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schema-registry.html#cfn-glue-schema-registry-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::Schema.Registry.Name"
          }
        }
      }
    },
    "AWS::Glue::Schema.SchemaVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schema-schemaversion.html",
      "Properties": {
        "IsLatest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schema-schemaversion.html#cfn-glue-schema-schemaversion-islatest",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VersionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schema-schemaversion.html#cfn-glue-schema-schemaversion-versionnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Schema.SchemaVersion.VersionNumber"
          }
        }
      }
    },
    "AWS::Glue::SchemaVersion.Schema": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schemaversion-schema.html",
      "Properties": {
        "RegistryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schemaversion-schema.html#cfn-glue-schemaversion-schema-registryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::SchemaVersion.Schema.RegistryName"
          }
        },
        "SchemaArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schemaversion-schema.html#cfn-glue-schemaversion-schema-schemaarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::SchemaVersion.Schema.SchemaArn"
          }
        },
        "SchemaName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-schemaversion-schema.html#cfn-glue-schemaversion-schema-schemaname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::SchemaVersion.Schema.SchemaName"
          }
        }
      }
    },
    "AWS::Glue::SecurityConfiguration.CloudWatchEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html",
      "Properties": {
        "CloudWatchEncryptionMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-cloudwatchencryptionmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-kmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::SecurityConfiguration.EncryptionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html",
      "Properties": {
        "CloudWatchEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-cloudwatchencryption",
          "Required": false,
          "Type": "CloudWatchEncryption",
          "UpdateType": "Mutable"
        },
        "JobBookmarksEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-jobbookmarksencryption",
          "Required": false,
          "Type": "JobBookmarksEncryption",
          "UpdateType": "Mutable"
        },
        "S3Encryptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-s3encryptions",
          "Required": false,
          "Type": "S3Encryptions",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::SecurityConfiguration.JobBookmarksEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html",
      "Properties": {
        "JobBookmarksEncryptionMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-jobbookmarksencryptionmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-kmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::SecurityConfiguration.S3Encryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html",
      "Properties": {
        "KmsKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-kmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3EncryptionMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-s3encryptionmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::SecurityConfiguration.S3Encryptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryptions.html",
      "ItemType": "S3Encryption",
      "Required": false,
      "Type": "List",
      "UpdateType": "Mutable"
    },
    "AWS::Glue::Table.Column": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html#cfn-glue-table-column-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html#cfn-glue-table-column-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html#cfn-glue-table-column-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.Order": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-order.html",
      "Properties": {
        "Column": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-order.html#cfn-glue-table-order-column",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SortOrder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-order.html#cfn-glue-table-order-sortorder",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.SchemaId": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemaid.html",
      "Properties": {
        "RegistryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemaid.html#cfn-glue-table-schemaid-registryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemaid.html#cfn-glue-table-schemaid-schemaarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemaid.html#cfn-glue-table-schemaid-schemaname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.SchemaReference": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemareference.html",
      "Properties": {
        "SchameVersionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemareference.html#cfn-glue-table-schemareference-schameversionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemareference.html#cfn-glue-table-schemareference-schemaid",
          "Required": false,
          "Type": "SchemaId",
          "UpdateType": "Mutable"
        },
        "SchemaVersionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-schemareference.html#cfn-glue-table-schemareference-schemaversionnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.SerdeInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html#cfn-glue-table-serdeinfo-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html#cfn-glue-table-serdeinfo-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SerializationLibrary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html#cfn-glue-table-serdeinfo-serializationlibrary",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.SkewedInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html",
      "Properties": {
        "SkewedColumnNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html#cfn-glue-table-skewedinfo-skewedcolumnnames",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SkewedColumnValueLocationMaps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html#cfn-glue-table-skewedinfo-skewedcolumnvaluelocationmaps",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SkewedColumnValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html#cfn-glue-table-skewedinfo-skewedcolumnvalues",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.StorageDescriptor": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html",
      "Properties": {
        "BucketColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-bucketcolumns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Columns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-columns",
          "ItemType": "Column",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Compressed": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-compressed",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-inputformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumberOfBuckets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-numberofbuckets",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-outputformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SchemaReference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-schemareference",
          "Required": false,
          "Type": "SchemaReference",
          "UpdateType": "Mutable"
        },
        "SerdeInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-serdeinfo",
          "Required": false,
          "Type": "SerdeInfo",
          "UpdateType": "Mutable"
        },
        "SkewedInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-skewedinfo",
          "Required": false,
          "Type": "SkewedInfo",
          "UpdateType": "Mutable"
        },
        "SortColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-sortcolumns",
          "ItemType": "Order",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StoredAsSubDirectories": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-storedassubdirectories",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.TableIdentifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableidentifier.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableidentifier.html#cfn-glue-table-tableidentifier-catalogid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableidentifier.html#cfn-glue-table-tableidentifier-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableidentifier.html#cfn-glue-table-tableidentifier-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Table.TableInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Owner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-owner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PartitionKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-partitionkeys",
          "ItemType": "Column",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Retention": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-retention",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StorageDescriptor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-storagedescriptor",
          "Required": false,
          "Type": "StorageDescriptor",
          "UpdateType": "Mutable"
        },
        "TableType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-tabletype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Table.TableInput.TableType"
          }
        },
        "TargetTable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-targettable",
          "Required": false,
          "Type": "TableIdentifier",
          "UpdateType": "Mutable"
        },
        "ViewExpandedText": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-viewexpandedtext",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ViewOriginalText": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-vieworiginaltext",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Trigger.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html",
      "Properties": {
        "Arguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-arguments",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CrawlerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-crawlername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JobName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-jobname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotificationProperty": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-notificationproperty",
          "Required": false,
          "Type": "NotificationProperty",
          "UpdateType": "Mutable"
        },
        "SecurityConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-securityconfiguration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-timeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Trigger.Condition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html",
      "Properties": {
        "CrawlState": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-crawlstate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CrawlerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-crawlername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JobName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-jobname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogicalOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-logicaloperator",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Trigger.Condition.LogicalOperator"
          }
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Trigger.Condition.State"
          }
        }
      }
    },
    "AWS::Glue::Trigger.NotificationProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html",
      "Properties": {
        "NotifyDelayAfter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html#cfn-glue-trigger-notificationproperty-notifydelayafter",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Trigger.Predicate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html",
      "Properties": {
        "Conditions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-conditions",
          "ItemType": "Condition",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Logical": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-logical",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Trigger.Predicate.Logical"
          }
        }
      }
    },
    "AWS::Greengrass::ConnectorDefinition.Connector": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ConnectorDefinitionVersion.Connector": {
      "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"
        }
      }
    },
    "AWS::Greengrass::CoreDefinition.Core": {
      "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"
        }
      }
    },
    "AWS::Greengrass::CoreDefinition.CoreDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::CoreDefinitionVersion.Core": {
      "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"
        }
      }
    },
    "AWS::Greengrass::DeviceDefinition.Device": {
      "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"
        }
      }
    },
    "AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::DeviceDefinitionVersion.Device": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.DefaultConfig": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.Environment": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.Execution": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.Function": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.FunctionConfiguration": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition.RunAs": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion.Environment": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion.Execution": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion.Function": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion.FunctionConfiguration": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion.RunAs": {
      "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"
        }
      }
    },
    "AWS::Greengrass::Group.GroupVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::LoggerDefinition.Logger": {
      "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"
        }
      }
    },
    "AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::LoggerDefinitionVersion.Logger": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.GroupOwnerSetting": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.ResourceDataContainer": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.ResourceDownloadOwnerSetting": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.ResourceInstance": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.ResourceDownloadOwnerSetting": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData": {
      "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"
        }
      }
    },
    "AWS::Greengrass::SubscriptionDefinition.Subscription": {
      "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"
        }
      }
    },
    "AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::SubscriptionDefinitionVersion.Subscription": {
      "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"
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.ComponentDependencyRequirement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-componentdependencyrequirement.html",
      "Properties": {
        "DependencyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-componentdependencyrequirement.html#cfn-greengrassv2-componentversion-componentdependencyrequirement-dependencytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VersionRequirement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-componentdependencyrequirement.html#cfn-greengrassv2-componentversion-componentdependencyrequirement-versionrequirement",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.ComponentPlatform": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-componentplatform.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-componentplatform.html#cfn-greengrassv2-componentversion-componentplatform-attributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-componentplatform.html#cfn-greengrassv2-componentversion-componentplatform-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaContainerParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdacontainerparams.html",
      "Properties": {
        "Devices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdacontainerparams.html#cfn-greengrassv2-componentversion-lambdacontainerparams-devices",
          "ItemType": "LambdaDeviceMount",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "MemorySizeInKB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdacontainerparams.html#cfn-greengrassv2-componentversion-lambdacontainerparams-memorysizeinkb",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MountROSysfs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdacontainerparams.html#cfn-greengrassv2-componentversion-lambdacontainerparams-mountrosysfs",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Volumes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdacontainerparams.html#cfn-greengrassv2-componentversion-lambdacontainerparams-volumes",
          "ItemType": "LambdaVolumeMount",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaDeviceMount": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdadevicemount.html",
      "Properties": {
        "AddGroupOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdadevicemount.html#cfn-greengrassv2-componentversion-lambdadevicemount-addgroupowner",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdadevicemount.html#cfn-greengrassv2-componentversion-lambdadevicemount-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Permission": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdadevicemount.html#cfn-greengrassv2-componentversion-lambdadevicemount-permission",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GreengrassV2::ComponentVersion.LambdaDeviceMount.Permission"
          }
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaEventSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaeventsource.html",
      "Properties": {
        "Topic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaeventsource.html#cfn-greengrassv2-componentversion-lambdaeventsource-topic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaeventsource.html#cfn-greengrassv2-componentversion-lambdaeventsource-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GreengrassV2::ComponentVersion.LambdaEventSource.Type"
          }
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaExecutionParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html",
      "Properties": {
        "EnvironmentVariables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-environmentvariables",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "EventSources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-eventsources",
          "ItemType": "LambdaEventSource",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ExecArgs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-execargs",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "InputPayloadEncodingType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-inputpayloadencodingtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GreengrassV2::ComponentVersion.LambdaExecutionParameters.InputPayloadEncodingType"
          }
        },
        "LinuxProcessParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-linuxprocessparams",
          "Required": false,
          "Type": "LambdaLinuxProcessParams",
          "UpdateType": "Immutable"
        },
        "MaxIdleTimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-maxidletimeinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MaxInstancesCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-maxinstancescount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MaxQueueSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-maxqueuesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Pinned": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-pinned",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StatusTimeoutInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-statustimeoutinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TimeoutInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdaexecutionparameters.html#cfn-greengrassv2-componentversion-lambdaexecutionparameters-timeoutinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaFunctionRecipeSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdafunctionrecipesource.html",
      "Properties": {
        "ComponentDependencies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdafunctionrecipesource.html#cfn-greengrassv2-componentversion-lambdafunctionrecipesource-componentdependencies",
          "ItemType": "ComponentDependencyRequirement",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "ComponentLambdaParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdafunctionrecipesource.html#cfn-greengrassv2-componentversion-lambdafunctionrecipesource-componentlambdaparameters",
          "Required": false,
          "Type": "LambdaExecutionParameters",
          "UpdateType": "Immutable"
        },
        "ComponentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdafunctionrecipesource.html#cfn-greengrassv2-componentversion-lambdafunctionrecipesource-componentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ComponentPlatforms": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdafunctionrecipesource.html#cfn-greengrassv2-componentversion-lambdafunctionrecipesource-componentplatforms",
          "ItemType": "ComponentPlatform",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ComponentVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdafunctionrecipesource.html#cfn-greengrassv2-componentversion-lambdafunctionrecipesource-componentversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LambdaArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdafunctionrecipesource.html#cfn-greengrassv2-componentversion-lambdafunctionrecipesource-lambdaarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GreengrassV2::ComponentVersion.LambdaFunctionRecipeSource.LambdaArn"
          }
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaLinuxProcessParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdalinuxprocessparams.html",
      "Properties": {
        "ContainerParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdalinuxprocessparams.html#cfn-greengrassv2-componentversion-lambdalinuxprocessparams-containerparams",
          "Required": false,
          "Type": "LambdaContainerParams",
          "UpdateType": "Immutable"
        },
        "IsolationMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdalinuxprocessparams.html#cfn-greengrassv2-componentversion-lambdalinuxprocessparams-isolationmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GreengrassV2::ComponentVersion.LambdaLinuxProcessParams.IsolationMode"
          }
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaVolumeMount": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdavolumemount.html",
      "Properties": {
        "AddGroupOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdavolumemount.html#cfn-greengrassv2-componentversion-lambdavolumemount-addgroupowner",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DestinationPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdavolumemount.html#cfn-greengrassv2-componentversion-lambdavolumemount-destinationpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Permission": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdavolumemount.html#cfn-greengrassv2-componentversion-lambdavolumemount-permission",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GreengrassV2::ComponentVersion.LambdaVolumeMount.Permission"
          }
        },
        "SourcePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrassv2-componentversion-lambdavolumemount.html#cfn-greengrassv2-componentversion-lambdavolumemount-sourcepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GroundStation::Config.AntennaDownlinkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennadownlinkconfig.html",
      "Properties": {
        "SpectrumConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennadownlinkconfig.html#cfn-groundstation-config-antennadownlinkconfig-spectrumconfig",
          "Required": false,
          "Type": "SpectrumConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.AntennaDownlinkDemodDecodeConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennadownlinkdemoddecodeconfig.html",
      "Properties": {
        "DecodeConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennadownlinkdemoddecodeconfig.html#cfn-groundstation-config-antennadownlinkdemoddecodeconfig-decodeconfig",
          "Required": false,
          "Type": "DecodeConfig",
          "UpdateType": "Mutable"
        },
        "DemodulationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennadownlinkdemoddecodeconfig.html#cfn-groundstation-config-antennadownlinkdemoddecodeconfig-demodulationconfig",
          "Required": false,
          "Type": "DemodulationConfig",
          "UpdateType": "Mutable"
        },
        "SpectrumConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennadownlinkdemoddecodeconfig.html#cfn-groundstation-config-antennadownlinkdemoddecodeconfig-spectrumconfig",
          "Required": false,
          "Type": "SpectrumConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.AntennaUplinkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennauplinkconfig.html",
      "Properties": {
        "SpectrumConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennauplinkconfig.html#cfn-groundstation-config-antennauplinkconfig-spectrumconfig",
          "Required": false,
          "Type": "UplinkSpectrumConfig",
          "UpdateType": "Mutable"
        },
        "TargetEirp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennauplinkconfig.html#cfn-groundstation-config-antennauplinkconfig-targeteirp",
          "Required": false,
          "Type": "Eirp",
          "UpdateType": "Mutable"
        },
        "TransmitDisabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-antennauplinkconfig.html#cfn-groundstation-config-antennauplinkconfig-transmitdisabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.ConfigData": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html",
      "Properties": {
        "AntennaDownlinkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html#cfn-groundstation-config-configdata-antennadownlinkconfig",
          "Required": false,
          "Type": "AntennaDownlinkConfig",
          "UpdateType": "Mutable"
        },
        "AntennaDownlinkDemodDecodeConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html#cfn-groundstation-config-configdata-antennadownlinkdemoddecodeconfig",
          "Required": false,
          "Type": "AntennaDownlinkDemodDecodeConfig",
          "UpdateType": "Mutable"
        },
        "AntennaUplinkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html#cfn-groundstation-config-configdata-antennauplinkconfig",
          "Required": false,
          "Type": "AntennaUplinkConfig",
          "UpdateType": "Mutable"
        },
        "DataflowEndpointConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html#cfn-groundstation-config-configdata-dataflowendpointconfig",
          "Required": false,
          "Type": "DataflowEndpointConfig",
          "UpdateType": "Mutable"
        },
        "S3RecordingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html#cfn-groundstation-config-configdata-s3recordingconfig",
          "Required": false,
          "Type": "S3RecordingConfig",
          "UpdateType": "Mutable"
        },
        "TrackingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html#cfn-groundstation-config-configdata-trackingconfig",
          "Required": false,
          "Type": "TrackingConfig",
          "UpdateType": "Mutable"
        },
        "UplinkEchoConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-configdata.html#cfn-groundstation-config-configdata-uplinkechoconfig",
          "Required": false,
          "Type": "UplinkEchoConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.DataflowEndpointConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-dataflowendpointconfig.html",
      "Properties": {
        "DataflowEndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-dataflowendpointconfig.html#cfn-groundstation-config-dataflowendpointconfig-dataflowendpointname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataflowEndpointRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-dataflowendpointconfig.html#cfn-groundstation-config-dataflowendpointconfig-dataflowendpointregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.DecodeConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-decodeconfig.html",
      "Properties": {
        "UnvalidatedJson": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-decodeconfig.html#cfn-groundstation-config-decodeconfig-unvalidatedjson",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.DemodulationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-demodulationconfig.html",
      "Properties": {
        "UnvalidatedJson": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-demodulationconfig.html#cfn-groundstation-config-demodulationconfig-unvalidatedjson",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.Eirp": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-eirp.html",
      "Properties": {
        "Units": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-eirp.html#cfn-groundstation-config-eirp-units",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-eirp.html#cfn-groundstation-config-eirp-value",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.Frequency": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-frequency.html",
      "Properties": {
        "Units": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-frequency.html#cfn-groundstation-config-frequency-units",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-frequency.html#cfn-groundstation-config-frequency-value",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.FrequencyBandwidth": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-frequencybandwidth.html",
      "Properties": {
        "Units": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-frequencybandwidth.html#cfn-groundstation-config-frequencybandwidth-units",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-frequencybandwidth.html#cfn-groundstation-config-frequencybandwidth-value",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.S3RecordingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-s3recordingconfig.html",
      "Properties": {
        "BucketArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-s3recordingconfig.html#cfn-groundstation-config-s3recordingconfig-bucketarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-s3recordingconfig.html#cfn-groundstation-config-s3recordingconfig-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-s3recordingconfig.html#cfn-groundstation-config-s3recordingconfig-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.SpectrumConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-spectrumconfig.html",
      "Properties": {
        "Bandwidth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-spectrumconfig.html#cfn-groundstation-config-spectrumconfig-bandwidth",
          "Required": false,
          "Type": "FrequencyBandwidth",
          "UpdateType": "Mutable"
        },
        "CenterFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-spectrumconfig.html#cfn-groundstation-config-spectrumconfig-centerfrequency",
          "Required": false,
          "Type": "Frequency",
          "UpdateType": "Mutable"
        },
        "Polarization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-spectrumconfig.html#cfn-groundstation-config-spectrumconfig-polarization",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.TrackingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-trackingconfig.html",
      "Properties": {
        "Autotrack": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-trackingconfig.html#cfn-groundstation-config-trackingconfig-autotrack",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.UplinkEchoConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-uplinkechoconfig.html",
      "Properties": {
        "AntennaUplinkConfigArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-uplinkechoconfig.html#cfn-groundstation-config-uplinkechoconfig-antennauplinkconfigarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-uplinkechoconfig.html#cfn-groundstation-config-uplinkechoconfig-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config.UplinkSpectrumConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-uplinkspectrumconfig.html",
      "Properties": {
        "CenterFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-uplinkspectrumconfig.html#cfn-groundstation-config-uplinkspectrumconfig-centerfrequency",
          "Required": false,
          "Type": "Frequency",
          "UpdateType": "Mutable"
        },
        "Polarization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-config-uplinkspectrumconfig.html#cfn-groundstation-config-uplinkspectrumconfig-polarization",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::DataflowEndpointGroup.DataflowEndpoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-dataflowendpoint.html",
      "Properties": {
        "Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-dataflowendpoint.html#cfn-groundstation-dataflowendpointgroup-dataflowendpoint-address",
          "Required": false,
          "Type": "SocketAddress",
          "UpdateType": "Mutable"
        },
        "Mtu": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-dataflowendpoint.html#cfn-groundstation-dataflowendpointgroup-dataflowendpoint-mtu",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-dataflowendpoint.html#cfn-groundstation-dataflowendpointgroup-dataflowendpoint-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-dataflowendpoint.html#cfn-groundstation-dataflowendpointgroup-dataflowendpoint-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::DataflowEndpointGroup.EndpointDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-endpointdetails.html",
      "Properties": {
        "Endpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-endpointdetails.html#cfn-groundstation-dataflowendpointgroup-endpointdetails-endpoint",
          "Required": false,
          "Type": "DataflowEndpoint",
          "UpdateType": "Mutable"
        },
        "SecurityDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-endpointdetails.html#cfn-groundstation-dataflowendpointgroup-endpointdetails-securitydetails",
          "Required": false,
          "Type": "SecurityDetails",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::DataflowEndpointGroup.SecurityDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-securitydetails.html",
      "Properties": {
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-securitydetails.html#cfn-groundstation-dataflowendpointgroup-securitydetails-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-securitydetails.html#cfn-groundstation-dataflowendpointgroup-securitydetails-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-securitydetails.html#cfn-groundstation-dataflowendpointgroup-securitydetails-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::DataflowEndpointGroup.SocketAddress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-socketaddress.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-socketaddress.html#cfn-groundstation-dataflowendpointgroup-socketaddress-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-dataflowendpointgroup-socketaddress.html#cfn-groundstation-dataflowendpointgroup-socketaddress-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::MissionProfile.DataflowEdge": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-missionprofile-dataflowedge.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-missionprofile-dataflowedge.html#cfn-groundstation-missionprofile-dataflowedge-destination",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-groundstation-missionprofile-dataflowedge.html#cfn-groundstation-missionprofile-dataflowedge-source",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GuardDuty::Detector.CFNDataSourceConfigurations": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfndatasourceconfigurations.html",
      "Properties": {
        "S3Logs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfndatasourceconfigurations.html#cfn-guardduty-detector-cfndatasourceconfigurations-s3logs",
          "Required": false,
          "Type": "CFNS3LogsConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GuardDuty::Detector.CFNS3LogsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfns3logsconfiguration.html",
      "Properties": {
        "Enable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfns3logsconfiguration.html#cfn-guardduty-detector-cfns3logsconfiguration-enable",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GuardDuty::Filter.Condition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html",
      "Properties": {
        "Eq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-eq",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Gte": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-gte",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Lt": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-lt",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Lte": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-lte",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Neq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-neq",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GuardDuty::Filter.FindingCriteria": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html",
      "Properties": {
        "Criterion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-criterion",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ItemType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-itemtype",
          "Required": false,
          "Type": "Condition",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::Group.Policy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html",
      "Properties": {
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Policy.PolicyName"
          }
        }
      }
    },
    "AWS::IAM::Role.Policy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html",
      "Properties": {
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Policy.PolicyName"
          }
        }
      }
    },
    "AWS::IAM::User.LoginProfile": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html",
      "Properties": {
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PasswordResetRequired": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-passwordresetrequired",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::User.Policy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html",
      "Properties": {
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Policy.PolicyName"
          }
        }
      }
    },
    "AWS::ImageBuilder::ContainerRecipe.ComponentConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-containerrecipe-componentconfiguration.html",
      "Properties": {
        "ComponentArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-containerrecipe-componentconfiguration.html#cfn-imagebuilder-containerrecipe-componentconfiguration-componentarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ImageBuilder::ContainerRecipe.TargetContainerRepository": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-containerrecipe-targetcontainerrepository.html",
      "Properties": {
        "RepositoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-containerrecipe-targetcontainerrepository.html#cfn-imagebuilder-containerrecipe-targetcontainerrepository-repositoryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Service": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-containerrecipe-targetcontainerrepository.html#cfn-imagebuilder-containerrecipe-targetcontainerrepository-service",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::ContainerRecipe.TargetContainerRepository.Service"
          }
        }
      }
    },
    "AWS::ImageBuilder::DistributionConfiguration.Distribution": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-distributionconfiguration-distribution.html",
      "Properties": {
        "AmiDistributionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-distributionconfiguration-distribution.html#cfn-imagebuilder-distributionconfiguration-distribution-amidistributionconfiguration",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ContainerDistributionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-distributionconfiguration-distribution.html#cfn-imagebuilder-distributionconfiguration-distribution-containerdistributionconfiguration",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LicenseConfigurationArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-distributionconfiguration-distribution.html#cfn-imagebuilder-distributionconfiguration-distribution-licenseconfigurationarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-distributionconfiguration-distribution.html#cfn-imagebuilder-distributionconfiguration-distribution-region",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ImageBuilder::Image.ImageTestsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-image-imagetestsconfiguration.html",
      "Properties": {
        "ImageTestsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-image-imagetestsconfiguration.html#cfn-imagebuilder-image-imagetestsconfiguration-imagetestsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TimeoutMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-image-imagetestsconfiguration.html#cfn-imagebuilder-image-imagetestsconfiguration-timeoutminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::Image.ImageTestsConfiguration.TimeoutMinutes"
          }
        }
      }
    },
    "AWS::ImageBuilder::ImagePipeline.ImageTestsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagepipeline-imagetestsconfiguration.html",
      "Properties": {
        "ImageTestsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagepipeline-imagetestsconfiguration.html#cfn-imagebuilder-imagepipeline-imagetestsconfiguration-imagetestsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeoutMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagepipeline-imagetestsconfiguration.html#cfn-imagebuilder-imagepipeline-imagetestsconfiguration-timeoutminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::ImagePipeline.ImageTestsConfiguration.TimeoutMinutes"
          }
        }
      }
    },
    "AWS::ImageBuilder::ImagePipeline.Schedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagepipeline-schedule.html",
      "Properties": {
        "PipelineExecutionStartCondition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagepipeline-schedule.html#cfn-imagebuilder-imagepipeline-schedule-pipelineexecutionstartcondition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::ImagePipeline.Schedule.PipelineExecutionStartCondition"
          }
        },
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagepipeline-schedule.html#cfn-imagebuilder-imagepipeline-schedule-scheduleexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ImageBuilder::ImageRecipe.ComponentConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-componentconfiguration.html",
      "Properties": {
        "ComponentArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-componentconfiguration.html#cfn-imagebuilder-imagerecipe-componentconfiguration-componentarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ImageBuilder::ImageRecipe.EbsInstanceBlockDeviceSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html",
      "Properties": {
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html#cfn-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification-deleteontermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html#cfn-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html#cfn-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html#cfn-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SnapshotId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html#cfn-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification-snapshotid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html#cfn-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification.html#cfn-imagebuilder-imagerecipe-ebsinstanceblockdevicespecification-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::ImageRecipe.EbsInstanceBlockDeviceSpecification.VolumeType"
          }
        }
      }
    },
    "AWS::ImageBuilder::ImageRecipe.InstanceBlockDeviceMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-instanceblockdevicemapping.html",
      "Properties": {
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-instanceblockdevicemapping.html#cfn-imagebuilder-imagerecipe-instanceblockdevicemapping-devicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Ebs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-instanceblockdevicemapping.html#cfn-imagebuilder-imagerecipe-instanceblockdevicemapping-ebs",
          "Required": false,
          "Type": "EbsInstanceBlockDeviceSpecification",
          "UpdateType": "Immutable"
        },
        "NoDevice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-instanceblockdevicemapping.html#cfn-imagebuilder-imagerecipe-instanceblockdevicemapping-nodevice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VirtualName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-imagerecipe-instanceblockdevicemapping.html#cfn-imagebuilder-imagerecipe-instanceblockdevicemapping-virtualname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ImageBuilder::InfrastructureConfiguration.Logging": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-infrastructureconfiguration-logging.html",
      "Properties": {
        "S3Logs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-infrastructureconfiguration-logging.html#cfn-imagebuilder-infrastructureconfiguration-logging-s3logs",
          "Required": false,
          "Type": "S3Logs",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ImageBuilder::InfrastructureConfiguration.S3Logs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-infrastructureconfiguration-s3logs.html",
      "Properties": {
        "S3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-infrastructureconfiguration-s3logs.html#cfn-imagebuilder-infrastructureconfiguration-s3logs-s3bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-infrastructureconfiguration-s3logs.html#cfn-imagebuilder-infrastructureconfiguration-s3logs-s3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT1Click::Project.DeviceTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html",
      "Properties": {
        "CallbackOverrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-callbackoverrides",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-devicetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT1Click::Project.PlacementTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html",
      "Properties": {
        "DefaultAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-defaultattributes",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceTemplates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-devicetemplates",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT::AccountAuditConfiguration.AuditCheckConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfiguration.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfiguration.html#cfn-iot-accountauditconfiguration-auditcheckconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::AccountAuditConfiguration.AuditCheckConfigurations": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html",
      "Properties": {
        "AuthenticatedCognitoRoleOverlyPermissiveCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-authenticatedcognitoroleoverlypermissivecheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "CaCertificateExpiringCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-cacertificateexpiringcheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "CaCertificateKeyQualityCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-cacertificatekeyqualitycheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "ConflictingClientIdsCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-conflictingclientidscheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "DeviceCertificateExpiringCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-devicecertificateexpiringcheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "DeviceCertificateKeyQualityCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-devicecertificatekeyqualitycheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "DeviceCertificateSharedCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-devicecertificatesharedcheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "IotPolicyOverlyPermissiveCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-iotpolicyoverlypermissivecheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "IotRoleAliasAllowsAccessToUnusedServicesCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-iotrolealiasallowsaccesstounusedservicescheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "IotRoleAliasOverlyPermissiveCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-iotrolealiasoverlypermissivecheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "LoggingDisabledCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-loggingdisabledcheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "RevokedCaCertificateStillActiveCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-revokedcacertificatestillactivecheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "RevokedDeviceCertificateStillActiveCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-revokeddevicecertificatestillactivecheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        },
        "UnauthenticatedCognitoRoleOverlyPermissiveCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-unauthenticatedcognitoroleoverlypermissivecheck",
          "Required": false,
          "Type": "AuditCheckConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::AccountAuditConfiguration.AuditNotificationTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtarget.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtarget.html#cfn-iot-accountauditconfiguration-auditnotificationtarget-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtarget.html#cfn-iot-accountauditconfiguration-auditnotificationtarget-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::AccountAuditConfiguration.AuditNotificationTarget.RoleArn"
          }
        },
        "TargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtarget.html#cfn-iot-accountauditconfiguration-auditnotificationtarget-targetarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::AccountAuditConfiguration.AuditNotificationTargetConfigurations": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtargetconfigurations.html",
      "Properties": {
        "Sns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtargetconfigurations.html#cfn-iot-accountauditconfiguration-auditnotificationtargetconfigurations-sns",
          "Required": false,
          "Type": "AuditNotificationTarget",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::MitigationAction.ActionParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html",
      "Properties": {
        "AddThingsToThingGroupParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-addthingstothinggroupparams",
          "Required": false,
          "Type": "AddThingsToThingGroupParams",
          "UpdateType": "Mutable"
        },
        "EnableIoTLoggingParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-enableiotloggingparams",
          "Required": false,
          "Type": "EnableIoTLoggingParams",
          "UpdateType": "Mutable"
        },
        "PublishFindingToSnsParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-publishfindingtosnsparams",
          "Required": false,
          "Type": "PublishFindingToSnsParams",
          "UpdateType": "Mutable"
        },
        "ReplaceDefaultPolicyVersionParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-replacedefaultpolicyversionparams",
          "Required": false,
          "Type": "ReplaceDefaultPolicyVersionParams",
          "UpdateType": "Mutable"
        },
        "UpdateCACertificateParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-updatecacertificateparams",
          "Required": false,
          "Type": "UpdateCACertificateParams",
          "UpdateType": "Mutable"
        },
        "UpdateDeviceCertificateParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-updatedevicecertificateparams",
          "Required": false,
          "Type": "UpdateDeviceCertificateParams",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::MitigationAction.AddThingsToThingGroupParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html",
      "Properties": {
        "OverrideDynamicGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html#cfn-iot-mitigationaction-addthingstothinggroupparams-overridedynamicgroups",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThingGroupNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html#cfn-iot-mitigationaction-addthingstothinggroupparams-thinggroupnames",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.AddThingsToThingGroupParams.ThingGroupNames"
          }
        }
      }
    },
    "AWS::IoT::MitigationAction.EnableIoTLoggingParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html",
      "Properties": {
        "LogLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html#cfn-iot-mitigationaction-enableiotloggingparams-loglevel",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.EnableIoTLoggingParams.LogLevel"
          }
        },
        "RoleArnForLogging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html#cfn-iot-mitigationaction-enableiotloggingparams-rolearnforlogging",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.EnableIoTLoggingParams.RoleArnForLogging"
          }
        }
      }
    },
    "AWS::IoT::MitigationAction.PublishFindingToSnsParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-publishfindingtosnsparams.html",
      "Properties": {
        "TopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-publishfindingtosnsparams.html#cfn-iot-mitigationaction-publishfindingtosnsparams-topicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.PublishFindingToSnsParams.TopicArn"
          }
        }
      }
    },
    "AWS::IoT::MitigationAction.ReplaceDefaultPolicyVersionParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-replacedefaultpolicyversionparams.html",
      "Properties": {
        "TemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-replacedefaultpolicyversionparams.html#cfn-iot-mitigationaction-replacedefaultpolicyversionparams-templatename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.ReplaceDefaultPolicyVersionParams.TemplateName"
          }
        }
      }
    },
    "AWS::IoT::MitigationAction.UpdateCACertificateParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatecacertificateparams.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatecacertificateparams.html#cfn-iot-mitigationaction-updatecacertificateparams-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.UpdateCACertificateParams.Action"
          }
        }
      }
    },
    "AWS::IoT::MitigationAction.UpdateDeviceCertificateParams": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatedevicecertificateparams.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatedevicecertificateparams.html#cfn-iot-mitigationaction-updatedevicecertificateparams-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.UpdateDeviceCertificateParams.Action"
          }
        }
      }
    },
    "AWS::IoT::ProvisioningTemplate.ProvisioningHook": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-provisioningtemplate-provisioninghook.html",
      "Properties": {
        "PayloadVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-provisioningtemplate-provisioninghook.html#cfn-iot-provisioningtemplate-provisioninghook-payloadversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-provisioningtemplate-provisioninghook.html#cfn-iot-provisioningtemplate-provisioninghook-targetarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::SecurityProfile.AlertTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html",
      "Properties": {
        "AlertTargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html#cfn-iot-securityprofile-alerttarget-alerttargetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html#cfn-iot-securityprofile-alerttarget-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::SecurityProfile.Behavior": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html",
      "Properties": {
        "Criteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-criteria",
          "Required": false,
          "Type": "BehaviorCriteria",
          "UpdateType": "Mutable"
        },
        "Metric": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-metric",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.Behavior.Metric"
          }
        },
        "MetricDimension": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-metricdimension",
          "Required": false,
          "Type": "MetricDimension",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.Behavior.Name"
          }
        },
        "SuppressAlerts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-suppressalerts",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::SecurityProfile.BehaviorCriteria": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-comparisonoperator",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.BehaviorCriteria.ComparisonOperator"
          }
        },
        "ConsecutiveDatapointsToAlarm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-consecutivedatapointstoalarm",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.BehaviorCriteria.ConsecutiveDatapointsToAlarm"
          }
        },
        "ConsecutiveDatapointsToClear": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-consecutivedatapointstoclear",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.BehaviorCriteria.ConsecutiveDatapointsToClear"
          }
        },
        "DurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-durationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MlDetectionConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-mldetectionconfig",
          "Required": false,
          "Type": "MachineLearningDetectionConfig",
          "UpdateType": "Mutable"
        },
        "StatisticalThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-statisticalthreshold",
          "Required": false,
          "Type": "StatisticalThreshold",
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-value",
          "Required": false,
          "Type": "MetricValue",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::SecurityProfile.MachineLearningDetectionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-machinelearningdetectionconfig.html",
      "Properties": {
        "ConfidenceLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-machinelearningdetectionconfig.html#cfn-iot-securityprofile-machinelearningdetectionconfig-confidencelevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.MachineLearningDetectionConfig.ConfidenceLevel"
          }
        }
      }
    },
    "AWS::IoT::SecurityProfile.MetricDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html",
      "Properties": {
        "DimensionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html#cfn-iot-securityprofile-metricdimension-dimensionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.MetricDimension.DimensionName"
          }
        },
        "Operator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html#cfn-iot-securityprofile-metricdimension-operator",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.MetricDimension.Operator"
          }
        }
      }
    },
    "AWS::IoT::SecurityProfile.MetricToRetain": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html",
      "Properties": {
        "Metric": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html#cfn-iot-securityprofile-metrictoretain-metric",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.MetricToRetain.Metric"
          }
        },
        "MetricDimension": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html#cfn-iot-securityprofile-metrictoretain-metricdimension",
          "Required": false,
          "Type": "MetricDimension",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::SecurityProfile.MetricValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html",
      "Properties": {
        "Cidrs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-cidrs",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-count",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Number": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-number",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Numbers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-numbers",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "Double",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Ports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-ports",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "Integer",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Strings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-strings",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::SecurityProfile.StatisticalThreshold": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-statisticalthreshold.html",
      "Properties": {
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-statisticalthreshold.html#cfn-iot-securityprofile-statisticalthreshold-statistic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.StatisticalThreshold.Statistic"
          }
        }
      }
    },
    "AWS::IoT::Thing.AttributePayload": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html#cfn-iot-thing-attributepayload-attributes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html",
      "Properties": {
        "CloudwatchAlarm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchalarm",
          "Required": false,
          "Type": "CloudwatchAlarmAction",
          "UpdateType": "Mutable"
        },
        "CloudwatchMetric": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchmetric",
          "Required": false,
          "Type": "CloudwatchMetricAction",
          "UpdateType": "Mutable"
        },
        "DynamoDB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodb",
          "Required": false,
          "Type": "DynamoDBAction",
          "UpdateType": "Mutable"
        },
        "DynamoDBv2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodbv2",
          "Required": false,
          "Type": "DynamoDBv2Action",
          "UpdateType": "Mutable"
        },
        "Elasticsearch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-elasticsearch",
          "Required": false,
          "Type": "ElasticsearchAction",
          "UpdateType": "Mutable"
        },
        "Firehose": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-firehose",
          "Required": false,
          "Type": "FirehoseAction",
          "UpdateType": "Mutable"
        },
        "Http": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-http",
          "Required": false,
          "Type": "HttpAction",
          "UpdateType": "Mutable"
        },
        "IotAnalytics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotanalytics",
          "Required": false,
          "Type": "IotAnalyticsAction",
          "UpdateType": "Mutable"
        },
        "IotEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotevents",
          "Required": false,
          "Type": "IotEventsAction",
          "UpdateType": "Mutable"
        },
        "IotSiteWise": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotsitewise",
          "Required": false,
          "Type": "IotSiteWiseAction",
          "UpdateType": "Mutable"
        },
        "Kinesis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-kinesis",
          "Required": false,
          "Type": "KinesisAction",
          "UpdateType": "Mutable"
        },
        "Lambda": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-lambda",
          "Required": false,
          "Type": "LambdaAction",
          "UpdateType": "Mutable"
        },
        "Republish": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-republish",
          "Required": false,
          "Type": "RepublishAction",
          "UpdateType": "Mutable"
        },
        "S3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-s3",
          "Required": false,
          "Type": "S3Action",
          "UpdateType": "Mutable"
        },
        "Sns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sns",
          "Required": false,
          "Type": "SnsAction",
          "UpdateType": "Mutable"
        },
        "Sqs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sqs",
          "Required": false,
          "Type": "SqsAction",
          "UpdateType": "Mutable"
        },
        "StepFunctions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-stepfunctions",
          "Required": false,
          "Type": "StepFunctionsAction",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.AssetPropertyTimestamp": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertytimestamp.html",
      "Properties": {
        "OffsetInNanos": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertytimestamp.html#cfn-iot-topicrule-assetpropertytimestamp-offsetinnanos",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertytimestamp.html#cfn-iot-topicrule-assetpropertytimestamp-timeinseconds",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.AssetPropertyValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvalue.html",
      "Properties": {
        "Quality": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvalue.html#cfn-iot-topicrule-assetpropertyvalue-quality",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Timestamp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvalue.html#cfn-iot-topicrule-assetpropertyvalue-timestamp",
          "Required": true,
          "Type": "AssetPropertyTimestamp",
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvalue.html#cfn-iot-topicrule-assetpropertyvalue-value",
          "Required": true,
          "Type": "AssetPropertyVariant",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.AssetPropertyVariant": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html",
      "Properties": {
        "BooleanValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-booleanvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DoubleValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-doublevalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegerValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-integervalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StringValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-stringvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.CloudwatchAlarmAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html",
      "Properties": {
        "AlarmName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-alarmname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StateReason": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-statereason",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StateValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-statevalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.CloudwatchMetricAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html",
      "Properties": {
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricNamespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricnamespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricTimestamp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metrictimestamp",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricUnit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricunit",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricvalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.DynamoDBAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html",
      "Properties": {
        "HashKeyField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeyfield",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "HashKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HashKeyValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeyvalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PayloadField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-payloadfield",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RangeKeyField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeyfield",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RangeKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RangeKeyValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeyvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-tablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.DynamoDBv2Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html",
      "Properties": {
        "PutItem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-putitem",
          "Required": false,
          "Type": "PutItemInput",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.ElasticsearchAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html",
      "Properties": {
        "Endpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-endpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Index": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-index",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.FirehoseAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html",
      "Properties": {
        "DeliveryStreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-deliverystreamname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Separator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-separator",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.HttpAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html",
      "Properties": {
        "Auth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-auth",
          "Required": false,
          "Type": "HttpAuthorization",
          "UpdateType": "Mutable"
        },
        "ConfirmationUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-confirmationurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Headers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-headers",
          "DuplicatesAllowed": false,
          "ItemType": "HttpActionHeader",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-url",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.HttpActionHeader": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpactionheader.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpactionheader.html#cfn-iot-topicrule-httpactionheader-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpactionheader.html#cfn-iot-topicrule-httpactionheader-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.HttpAuthorization": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpauthorization.html",
      "Properties": {
        "Sigv4": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpauthorization.html#cfn-iot-topicrule-httpauthorization-sigv4",
          "Required": false,
          "Type": "SigV4Authorization",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.IotAnalyticsAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html",
      "Properties": {
        "ChannelName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-channelname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.IotEventsAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html",
      "Properties": {
        "InputName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html#cfn-iot-topicrule-ioteventsaction-inputname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MessageId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html#cfn-iot-topicrule-ioteventsaction-messageid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html#cfn-iot-topicrule-ioteventsaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.IotSiteWiseAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotsitewiseaction.html",
      "Properties": {
        "PutAssetPropertyValueEntries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotsitewiseaction.html#cfn-iot-topicrule-iotsitewiseaction-putassetpropertyvalueentries",
          "DuplicatesAllowed": false,
          "ItemType": "PutAssetPropertyValueEntry",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotsitewiseaction.html#cfn-iot-topicrule-iotsitewiseaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.KinesisAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html",
      "Properties": {
        "PartitionKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-partitionkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-streamname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.LambdaAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html",
      "Properties": {
        "FunctionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html#cfn-iot-topicrule-lambdaaction-functionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.PutAssetPropertyValueEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html",
      "Properties": {
        "AssetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-assetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EntryId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-entryid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropertyAlias": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-propertyalias",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropertyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-propertyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropertyValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-propertyvalues",
          "DuplicatesAllowed": false,
          "ItemType": "AssetPropertyValue",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.PutItemInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html",
      "Properties": {
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html#cfn-iot-topicrule-putiteminput-tablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.RepublishAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html",
      "Properties": {
        "Qos": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-qos",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Topic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-topic",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.S3Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "CannedAcl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-cannedacl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::TopicRule.S3Action.CannedAcl"
          }
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.SigV4Authorization": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sigv4authorization.html",
      "Properties": {
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sigv4authorization.html#cfn-iot-topicrule-sigv4authorization-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sigv4authorization.html#cfn-iot-topicrule-sigv4authorization-servicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SigningRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sigv4authorization.html#cfn-iot-topicrule-sigv4authorization-signingregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.SnsAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html",
      "Properties": {
        "MessageFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-messageformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-targetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.SqsAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html",
      "Properties": {
        "QueueUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-queueurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "UseBase64": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-usebase64",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.StepFunctionsAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html",
      "Properties": {
        "ExecutionNamePrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-executionnameprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StateMachineName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-statemachinename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRule.TopicRulePayload": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-actions",
          "ItemType": "Action",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AwsIotSqlVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-awsiotsqlversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ErrorAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-erroraction",
          "Required": false,
          "Type": "Action",
          "UpdateType": "Mutable"
        },
        "RuleDisabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-ruledisabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Sql": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-sql",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRuleDestination.HttpUrlDestinationSummary": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-httpurldestinationsummary.html",
      "Properties": {
        "ConfirmationUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-httpurldestinationsummary.html#cfn-iot-topicruledestination-httpurldestinationsummary-confirmationurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT::TopicRuleDestination.VpcDestinationProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html",
      "Properties": {
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-securitygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoTAnalytics::Channel.ChannelStorage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html",
      "Properties": {
        "CustomerManagedS3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-customermanageds3",
          "Required": false,
          "Type": "CustomerManagedS3",
          "UpdateType": "Mutable"
        },
        "ServiceManagedS3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-servicemanageds3",
          "Required": false,
          "Type": "ServiceManagedS3",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Channel.CustomerManagedS3": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html#cfn-iotanalytics-channel-customermanageds3-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html#cfn-iotanalytics-channel-customermanageds3-keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html#cfn-iotanalytics-channel-customermanageds3-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Channel.RetentionPeriod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html",
      "Properties": {
        "NumberOfDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-numberofdays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Unlimited": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-unlimited",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Channel.ServiceManagedS3": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-servicemanageds3.html",
      "Properties": {}
    },
    "AWS::IoTAnalytics::Dataset.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html",
      "Properties": {
        "ActionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-actionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ContainerAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-containeraction",
          "Required": false,
          "Type": "ContainerAction",
          "UpdateType": "Mutable"
        },
        "QueryAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-queryaction",
          "Required": false,
          "Type": "QueryAction",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.ContainerAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html",
      "Properties": {
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-executionrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Image": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-image",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-resourceconfiguration",
          "Required": true,
          "Type": "ResourceConfiguration",
          "UpdateType": "Mutable"
        },
        "Variables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-variables",
          "ItemType": "Variable",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-destination",
          "Required": true,
          "Type": "DatasetContentDeliveryRuleDestination",
          "UpdateType": "Mutable"
        },
        "EntryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-entryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRuleDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html",
      "Properties": {
        "IotEventsDestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-ioteventsdestinationconfiguration",
          "Required": false,
          "Type": "IotEventsDestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "S3DestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-s3destinationconfiguration",
          "Required": false,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.DatasetContentVersionValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html",
      "Properties": {
        "DatasetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html#cfn-iotanalytics-dataset-variable-datasetcontentversionvalue-datasetname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.DeltaTime": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html",
      "Properties": {
        "OffsetSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-offsetseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-timeexpression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.DeltaTimeSessionWindowConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatimesessionwindowconfiguration.html",
      "Properties": {
        "TimeoutInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatimesessionwindowconfiguration.html#cfn-iotanalytics-dataset-deltatimesessionwindowconfiguration-timeoutinminutes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.Filter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html",
      "Properties": {
        "DeltaTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html#cfn-iotanalytics-dataset-filter-deltatime",
          "Required": false,
          "Type": "DeltaTime",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.GlueConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html",
      "Properties": {
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-databasename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-tablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.IotEventsDestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html",
      "Properties": {
        "InputName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-inputname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.LateDataRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-latedatarule.html",
      "Properties": {
        "RuleConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-latedatarule.html#cfn-iotanalytics-dataset-latedatarule-ruleconfiguration",
          "Required": true,
          "Type": "LateDataRuleConfiguration",
          "UpdateType": "Mutable"
        },
        "RuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-latedatarule.html#cfn-iotanalytics-dataset-latedatarule-rulename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.LateDataRuleConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-latedataruleconfiguration.html",
      "Properties": {
        "DeltaTimeSessionWindowConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-latedataruleconfiguration.html#cfn-iotanalytics-dataset-latedataruleconfiguration-deltatimesessionwindowconfiguration",
          "Required": false,
          "Type": "DeltaTimeSessionWindowConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.OutputFileUriValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html",
      "Properties": {
        "FileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html#cfn-iotanalytics-dataset-variable-outputfileurivalue-filename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.QueryAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html",
      "Properties": {
        "Filters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-filters",
          "ItemType": "Filter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SqlQuery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-sqlquery",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.ResourceConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html",
      "Properties": {
        "ComputeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-computetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VolumeSizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-volumesizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.RetentionPeriod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html",
      "Properties": {
        "NumberOfDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-numberofdays",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Unlimited": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-unlimited",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.S3DestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "GlueConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-glueconfiguration",
          "Required": false,
          "Type": "GlueConfiguration",
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.Schedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html",
      "Properties": {
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html#cfn-iotanalytics-dataset-trigger-schedule-scheduleexpression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.Trigger": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html",
      "Properties": {
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-schedule",
          "Required": false,
          "Type": "Schedule",
          "UpdateType": "Mutable"
        },
        "TriggeringDataset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-triggeringdataset",
          "Required": false,
          "Type": "TriggeringDataset",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.TriggeringDataset": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html",
      "Properties": {
        "DatasetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html#cfn-iotanalytics-dataset-triggeringdataset-datasetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.Variable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html",
      "Properties": {
        "DatasetContentVersionValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-datasetcontentversionvalue",
          "Required": false,
          "Type": "DatasetContentVersionValue",
          "UpdateType": "Mutable"
        },
        "DoubleValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-doublevalue",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputFileUriValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-outputfileurivalue",
          "Required": false,
          "Type": "OutputFileUriValue",
          "UpdateType": "Mutable"
        },
        "StringValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-stringvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VariableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-variablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset.VersioningConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html",
      "Properties": {
        "MaxVersions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-maxversions",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Unlimited": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-unlimited",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.Column": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-column.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-column.html#cfn-iotanalytics-datastore-column-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-column.html#cfn-iotanalytics-datastore-column-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.CustomerManagedS3": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.DatastoreStorage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html",
      "Properties": {
        "CustomerManagedS3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-customermanageds3",
          "Required": false,
          "Type": "CustomerManagedS3",
          "UpdateType": "Mutable"
        },
        "ServiceManagedS3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-servicemanageds3",
          "Required": false,
          "Type": "ServiceManagedS3",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.FileFormatConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-fileformatconfiguration.html",
      "Properties": {
        "JsonConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-fileformatconfiguration.html#cfn-iotanalytics-datastore-fileformatconfiguration-jsonconfiguration",
          "Required": false,
          "Type": "JsonConfiguration",
          "UpdateType": "Mutable"
        },
        "ParquetConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-fileformatconfiguration.html#cfn-iotanalytics-datastore-fileformatconfiguration-parquetconfiguration",
          "Required": false,
          "Type": "ParquetConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.JsonConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-jsonconfiguration.html",
      "Properties": {}
    },
    "AWS::IoTAnalytics::Datastore.ParquetConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-parquetconfiguration.html",
      "Properties": {
        "SchemaDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-parquetconfiguration.html#cfn-iotanalytics-datastore-parquetconfiguration-schemadefinition",
          "Required": false,
          "Type": "SchemaDefinition",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.RetentionPeriod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html",
      "Properties": {
        "NumberOfDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-numberofdays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Unlimited": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-unlimited",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.SchemaDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-schemadefinition.html",
      "Properties": {
        "Columns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-schemadefinition.html#cfn-iotanalytics-datastore-schemadefinition-columns",
          "ItemType": "Column",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore.ServiceManagedS3": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-servicemanageds3.html",
      "Properties": {}
    },
    "AWS::IoTAnalytics::Pipeline.Activity": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html",
      "Properties": {
        "AddAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-addattributes",
          "Required": false,
          "Type": "AddAttributes",
          "UpdateType": "Mutable"
        },
        "Channel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-channel",
          "Required": false,
          "Type": "Channel",
          "UpdateType": "Mutable"
        },
        "Datastore": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-datastore",
          "Required": false,
          "Type": "Datastore",
          "UpdateType": "Mutable"
        },
        "DeviceRegistryEnrich": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceregistryenrich",
          "Required": false,
          "Type": "DeviceRegistryEnrich",
          "UpdateType": "Mutable"
        },
        "DeviceShadowEnrich": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceshadowenrich",
          "Required": false,
          "Type": "DeviceShadowEnrich",
          "UpdateType": "Mutable"
        },
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-filter",
          "Required": false,
          "Type": "Filter",
          "UpdateType": "Mutable"
        },
        "Lambda": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-lambda",
          "Required": false,
          "Type": "Lambda",
          "UpdateType": "Mutable"
        },
        "Math": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-math",
          "Required": false,
          "Type": "Math",
          "UpdateType": "Mutable"
        },
        "RemoveAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-removeattributes",
          "Required": false,
          "Type": "RemoveAttributes",
          "UpdateType": "Mutable"
        },
        "SelectAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-selectattributes",
          "Required": false,
          "Type": "SelectAttributes",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.AddAttributes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html#cfn-iotanalytics-pipeline-addattributes-attributes",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html#cfn-iotanalytics-pipeline-addattributes-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html#cfn-iotanalytics-pipeline-addattributes-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.Channel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html",
      "Properties": {
        "ChannelName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html#cfn-iotanalytics-pipeline-channel-channelname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html#cfn-iotanalytics-pipeline-channel-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html#cfn-iotanalytics-pipeline-channel-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.Datastore": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html",
      "Properties": {
        "DatastoreName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-datastorename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.DeviceRegistryEnrich": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html",
      "Properties": {
        "Attribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-attribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThingName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-thingname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.DeviceShadowEnrich": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html",
      "Properties": {
        "Attribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-attribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThingName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-thingname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.Filter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html",
      "Properties": {
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html#cfn-iotanalytics-pipeline-filter-filter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html#cfn-iotanalytics-pipeline-filter-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html#cfn-iotanalytics-pipeline-filter-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.Lambda": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html",
      "Properties": {
        "BatchSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-batchsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LambdaName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-lambdaname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.Math": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html",
      "Properties": {
        "Attribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-attribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Math": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-math",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.RemoveAttributes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-attributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline.SelectAttributes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-attributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Next": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-next",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html",
      "Properties": {
        "ClearTimer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-cleartimer",
          "Required": false,
          "Type": "ClearTimer",
          "UpdateType": "Mutable"
        },
        "DynamoDB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-dynamodb",
          "Required": false,
          "Type": "DynamoDB",
          "UpdateType": "Mutable"
        },
        "DynamoDBv2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-dynamodbv2",
          "Required": false,
          "Type": "DynamoDBv2",
          "UpdateType": "Mutable"
        },
        "Firehose": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-firehose",
          "Required": false,
          "Type": "Firehose",
          "UpdateType": "Mutable"
        },
        "IotEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iotevents",
          "Required": false,
          "Type": "IotEvents",
          "UpdateType": "Mutable"
        },
        "IotSiteWise": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iotsitewise",
          "Required": false,
          "Type": "IotSiteWise",
          "UpdateType": "Mutable"
        },
        "IotTopicPublish": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iottopicpublish",
          "Required": false,
          "Type": "IotTopicPublish",
          "UpdateType": "Mutable"
        },
        "Lambda": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-lambda",
          "Required": false,
          "Type": "Lambda",
          "UpdateType": "Mutable"
        },
        "ResetTimer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-resettimer",
          "Required": false,
          "Type": "ResetTimer",
          "UpdateType": "Mutable"
        },
        "SetTimer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-settimer",
          "Required": false,
          "Type": "SetTimer",
          "UpdateType": "Mutable"
        },
        "SetVariable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-setvariable",
          "Required": false,
          "Type": "SetVariable",
          "UpdateType": "Mutable"
        },
        "Sns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sns",
          "Required": false,
          "Type": "Sns",
          "UpdateType": "Mutable"
        },
        "Sqs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sqs",
          "Required": false,
          "Type": "Sqs",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.AssetPropertyTimestamp": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertytimestamp.html",
      "Properties": {
        "OffsetInNanos": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertytimestamp.html#cfn-iotevents-detectormodel-assetpropertytimestamp-offsetinnanos",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertytimestamp.html#cfn-iotevents-detectormodel-assetpropertytimestamp-timeinseconds",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.AssetPropertyValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvalue.html",
      "Properties": {
        "Quality": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvalue.html#cfn-iotevents-detectormodel-assetpropertyvalue-quality",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Timestamp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvalue.html#cfn-iotevents-detectormodel-assetpropertyvalue-timestamp",
          "Required": false,
          "Type": "AssetPropertyTimestamp",
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvalue.html#cfn-iotevents-detectormodel-assetpropertyvalue-value",
          "Required": false,
          "Type": "AssetPropertyVariant",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.AssetPropertyVariant": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvariant.html",
      "Properties": {
        "BooleanValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvariant.html#cfn-iotevents-detectormodel-assetpropertyvariant-booleanvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DoubleValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvariant.html#cfn-iotevents-detectormodel-assetpropertyvariant-doublevalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegerValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvariant.html#cfn-iotevents-detectormodel-assetpropertyvariant-integervalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StringValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-assetpropertyvariant.html#cfn-iotevents-detectormodel-assetpropertyvariant-stringvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.ClearTimer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html",
      "Properties": {
        "TimerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html#cfn-iotevents-detectormodel-cleartimer-timername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.DetectorModelDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html",
      "Properties": {
        "InitialStateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-initialstatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "States": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-states",
          "ItemType": "State",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.DynamoDB": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html",
      "Properties": {
        "HashKeyField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-hashkeyfield",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HashKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-hashkeytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HashKeyValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-hashkeyvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Operation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-operation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        },
        "PayloadField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-payloadfield",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RangeKeyField": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-rangekeyfield",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RangeKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-rangekeytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RangeKeyValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-rangekeyvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodb.html#cfn-iotevents-detectormodel-dynamodb-tablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.DynamoDBv2": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodbv2.html",
      "Properties": {
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodbv2.html#cfn-iotevents-detectormodel-dynamodbv2-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-dynamodbv2.html#cfn-iotevents-detectormodel-dynamodbv2-tablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.Event": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html#cfn-iotevents-detectormodel-event-actions",
          "ItemType": "Action",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Condition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html#cfn-iotevents-detectormodel-event-condition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html#cfn-iotevents-detectormodel-event-eventname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.Firehose": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html",
      "Properties": {
        "DeliveryStreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-deliverystreamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        },
        "Separator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-separator",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.IotEvents": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html",
      "Properties": {
        "InputName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html#cfn-iotevents-detectormodel-iotevents-inputname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html#cfn-iotevents-detectormodel-iotevents-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.IotSiteWise": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotsitewise.html",
      "Properties": {
        "AssetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotsitewise.html#cfn-iotevents-detectormodel-iotsitewise-assetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EntryId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotsitewise.html#cfn-iotevents-detectormodel-iotsitewise-entryid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropertyAlias": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotsitewise.html#cfn-iotevents-detectormodel-iotsitewise-propertyalias",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropertyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotsitewise.html#cfn-iotevents-detectormodel-iotsitewise-propertyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropertyValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotsitewise.html#cfn-iotevents-detectormodel-iotsitewise-propertyvalue",
          "Required": false,
          "Type": "AssetPropertyValue",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.IotTopicPublish": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html",
      "Properties": {
        "MqttTopic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html#cfn-iotevents-detectormodel-iottopicpublish-mqtttopic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html#cfn-iotevents-detectormodel-iottopicpublish-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.Lambda": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html",
      "Properties": {
        "FunctionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html#cfn-iotevents-detectormodel-lambda-functionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html#cfn-iotevents-detectormodel-lambda-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.OnEnter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html",
      "Properties": {
        "Events": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html#cfn-iotevents-detectormodel-onenter-events",
          "ItemType": "Event",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.OnExit": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html",
      "Properties": {
        "Events": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html#cfn-iotevents-detectormodel-onexit-events",
          "ItemType": "Event",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.OnInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html",
      "Properties": {
        "Events": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-events",
          "ItemType": "Event",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TransitionEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-transitionevents",
          "ItemType": "TransitionEvent",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.Payload": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-payload.html",
      "Properties": {
        "ContentExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-payload.html#cfn-iotevents-detectormodel-payload-contentexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-payload.html#cfn-iotevents-detectormodel-payload-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.ResetTimer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html",
      "Properties": {
        "TimerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html#cfn-iotevents-detectormodel-resettimer-timername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.SetTimer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html",
      "Properties": {
        "DurationExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-durationexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Seconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-seconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-timername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.SetVariable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html",
      "Properties": {
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VariableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-variablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.Sns": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html",
      "Properties": {
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html#cfn-iotevents-detectormodel-sns-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        },
        "TargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html#cfn-iotevents-detectormodel-sns-targetarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.Sqs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html",
      "Properties": {
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-payload",
          "Required": false,
          "Type": "Payload",
          "UpdateType": "Mutable"
        },
        "QueueUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-queueurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UseBase64": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-usebase64",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.State": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html",
      "Properties": {
        "OnEnter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onenter",
          "Required": false,
          "Type": "OnEnter",
          "UpdateType": "Mutable"
        },
        "OnExit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onexit",
          "Required": false,
          "Type": "OnExit",
          "UpdateType": "Mutable"
        },
        "OnInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-oninput",
          "Required": false,
          "Type": "OnInput",
          "UpdateType": "Mutable"
        },
        "StateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-statename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel.TransitionEvent": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-actions",
          "ItemType": "Action",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Condition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-condition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-eventname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NextState": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-nextstate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::Input.Attribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html",
      "Properties": {
        "JsonPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html#cfn-iotevents-input-attribute-jsonpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::Input.InputDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html#cfn-iotevents-input-inputdefinition-attributes",
          "ItemType": "Attribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy.AccessPolicyIdentity": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-accesspolicyidentity.html",
      "Properties": {
        "IamRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-accesspolicyidentity.html#cfn-iotsitewise-accesspolicy-accesspolicyidentity-iamrole",
          "Required": false,
          "Type": "IamRole",
          "UpdateType": "Mutable"
        },
        "IamUser": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-accesspolicyidentity.html#cfn-iotsitewise-accesspolicy-accesspolicyidentity-iamuser",
          "Required": false,
          "Type": "IamUser",
          "UpdateType": "Mutable"
        },
        "User": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-accesspolicyidentity.html#cfn-iotsitewise-accesspolicy-accesspolicyidentity-user",
          "Required": false,
          "Type": "User",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy.AccessPolicyResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-accesspolicyresource.html",
      "Properties": {
        "Portal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-accesspolicyresource.html#cfn-iotsitewise-accesspolicy-accesspolicyresource-portal",
          "Required": false,
          "Type": "Portal",
          "UpdateType": "Mutable"
        },
        "Project": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-accesspolicyresource.html#cfn-iotsitewise-accesspolicy-accesspolicyresource-project",
          "Required": false,
          "Type": "Project",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy.IamRole": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-iamrole.html",
      "Properties": {
        "arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-iamrole.html#cfn-iotsitewise-accesspolicy-iamrole-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AccessPolicy.IamRole.arn"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy.IamUser": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-iamuser.html",
      "Properties": {
        "arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-iamuser.html#cfn-iotsitewise-accesspolicy-iamuser-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AccessPolicy.IamUser.arn"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy.Portal": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-portal.html",
      "Properties": {
        "id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-portal.html#cfn-iotsitewise-accesspolicy-portal-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AccessPolicy.Portal.id"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy.Project": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-project.html",
      "Properties": {
        "id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-project.html#cfn-iotsitewise-accesspolicy-project-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AccessPolicy.Project.id"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy.User": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-user.html",
      "Properties": {
        "id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-accesspolicy-user.html#cfn-iotsitewise-accesspolicy-user-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AccessPolicy.User.id"
          }
        }
      }
    },
    "AWS::IoTSiteWise::Asset.AssetHierarchy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assethierarchy.html",
      "Properties": {
        "ChildAssetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assethierarchy.html#cfn-iotsitewise-asset-assethierarchy-childassetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Asset.AssetHierarchy.ChildAssetId"
          }
        },
        "LogicalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assethierarchy.html#cfn-iotsitewise-asset-assethierarchy-logicalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Asset.AssetHierarchy.LogicalId"
          }
        }
      }
    },
    "AWS::IoTSiteWise::Asset.AssetProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html",
      "Properties": {
        "Alias": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html#cfn-iotsitewise-asset-assetproperty-alias",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Asset.AssetProperty.Alias"
          }
        },
        "LogicalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html#cfn-iotsitewise-asset-assetproperty-logicalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Asset.AssetProperty.LogicalId"
          }
        },
        "NotificationState": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html#cfn-iotsitewise-asset-assetproperty-notificationstate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Asset.AssetProperty.NotificationState"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html",
      "Properties": {
        "CompositeModelProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-compositemodelproperties",
          "ItemType": "AssetModelProperty",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel.Description"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel.Name"
          }
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel.Type"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelHierarchy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html",
      "Properties": {
        "ChildAssetModelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html#cfn-iotsitewise-assetmodel-assetmodelhierarchy-childassetmodelid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelHierarchy.ChildAssetModelId"
          }
        },
        "LogicalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html#cfn-iotsitewise-assetmodel-assetmodelhierarchy-logicalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelHierarchy.LogicalId"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html#cfn-iotsitewise-assetmodel-assetmodelhierarchy-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelHierarchy.Name"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelProperty": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html",
      "Properties": {
        "DataType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-datatype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelProperty.DataType"
          }
        },
        "DataTypeSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-datatypespec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelProperty.DataTypeSpec"
          }
        },
        "LogicalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-logicalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelProperty.LogicalId"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelProperty.Name"
          }
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-type",
          "Required": true,
          "Type": "PropertyType",
          "UpdateType": "Mutable"
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelProperty.Unit"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.Attribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-attribute.html",
      "Properties": {
        "DefaultValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-attribute.html#cfn-iotsitewise-assetmodel-attribute-defaultvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.Attribute.DefaultValue"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.ExpressionVariable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-expressionvariable.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-expressionvariable.html#cfn-iotsitewise-assetmodel-expressionvariable-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.ExpressionVariable.Name"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-expressionvariable.html#cfn-iotsitewise-assetmodel-expressionvariable-value",
          "Required": true,
          "Type": "VariableValue",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.Metric": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-metric.html",
      "Properties": {
        "Expression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-metric.html#cfn-iotsitewise-assetmodel-metric-expression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.Metric.Expression"
          }
        },
        "Variables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-metric.html#cfn-iotsitewise-assetmodel-metric-variables",
          "ItemType": "ExpressionVariable",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Window": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-metric.html#cfn-iotsitewise-assetmodel-metric-window",
          "Required": true,
          "Type": "MetricWindow",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.MetricWindow": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-metricwindow.html",
      "Properties": {
        "Tumbling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-metricwindow.html#cfn-iotsitewise-assetmodel-metricwindow-tumbling",
          "Required": false,
          "Type": "TumblingWindow",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.PropertyType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertytype.html",
      "Properties": {
        "Attribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertytype.html#cfn-iotsitewise-assetmodel-propertytype-attribute",
          "Required": false,
          "Type": "Attribute",
          "UpdateType": "Mutable"
        },
        "Metric": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertytype.html#cfn-iotsitewise-assetmodel-propertytype-metric",
          "Required": false,
          "Type": "Metric",
          "UpdateType": "Mutable"
        },
        "Transform": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertytype.html#cfn-iotsitewise-assetmodel-propertytype-transform",
          "Required": false,
          "Type": "Transform",
          "UpdateType": "Mutable"
        },
        "TypeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertytype.html#cfn-iotsitewise-assetmodel-propertytype-typename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.PropertyType.TypeName"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.Transform": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-transform.html",
      "Properties": {
        "Expression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-transform.html#cfn-iotsitewise-assetmodel-transform-expression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.Transform.Expression"
          }
        },
        "Variables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-transform.html#cfn-iotsitewise-assetmodel-transform-variables",
          "ItemType": "ExpressionVariable",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.TumblingWindow": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-tumblingwindow.html",
      "Properties": {
        "Interval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-tumblingwindow.html#cfn-iotsitewise-assetmodel-tumblingwindow-interval",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.TumblingWindow.Interval"
          }
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel.VariableValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html",
      "Properties": {
        "HierarchyLogicalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-hierarchylogicalid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.VariableValue.HierarchyLogicalId"
          }
        },
        "PropertyLogicalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-propertylogicalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.VariableValue.PropertyLogicalId"
          }
        }
      }
    },
    "AWS::IoTSiteWise::Gateway.GatewayCapabilitySummary": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-gateway-gatewaycapabilitysummary.html",
      "Properties": {
        "CapabilityConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-gateway-gatewaycapabilitysummary.html#cfn-iotsitewise-gateway-gatewaycapabilitysummary-capabilityconfiguration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Gateway.GatewayCapabilitySummary.CapabilityConfiguration"
          }
        },
        "CapabilityNamespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-gateway-gatewaycapabilitysummary.html#cfn-iotsitewise-gateway-gatewaycapabilitysummary-capabilitynamespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Gateway.GatewayCapabilitySummary.CapabilityNamespace"
          }
        }
      }
    },
    "AWS::IoTSiteWise::Gateway.GatewayPlatform": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-gateway-gatewayplatform.html",
      "Properties": {
        "Greengrass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-gateway-gatewayplatform.html#cfn-iotsitewise-gateway-gatewayplatform-greengrass",
          "Required": true,
          "Type": "Greengrass",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoTSiteWise::Gateway.Greengrass": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-gateway-greengrass.html",
      "Properties": {
        "GroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-gateway-greengrass.html#cfn-iotsitewise-gateway-greengrass-grouparn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Gateway.Greengrass.GroupArn"
          }
        }
      }
    },
    "AWS::Kinesis::Stream.StreamEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html",
      "Properties": {
        "EncryptionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-encryptiontype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Kinesis::Stream.StreamEncryption.EncryptionType"
          }
        },
        "KeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-keyid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Kinesis::Stream.StreamEncryption.KeyId"
          }
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.ApplicationCodeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html",
      "Properties": {
        "CodeContent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontent",
          "Required": true,
          "Type": "CodeContent",
          "UpdateType": "Mutable"
        },
        "CodeContentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontenttype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.ApplicationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html",
      "Properties": {
        "ApplicationCodeConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationcodeconfiguration",
          "Required": false,
          "Type": "ApplicationCodeConfiguration",
          "UpdateType": "Mutable"
        },
        "ApplicationSnapshotConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationsnapshotconfiguration",
          "Required": false,
          "Type": "ApplicationSnapshotConfiguration",
          "UpdateType": "Mutable"
        },
        "EnvironmentProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-environmentproperties",
          "Required": false,
          "Type": "EnvironmentProperties",
          "UpdateType": "Mutable"
        },
        "FlinkApplicationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-flinkapplicationconfiguration",
          "Required": false,
          "Type": "FlinkApplicationConfiguration",
          "UpdateType": "Mutable"
        },
        "SqlApplicationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-sqlapplicationconfiguration",
          "Required": false,
          "Type": "SqlApplicationConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.ApplicationSnapshotConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html",
      "Properties": {
        "SnapshotsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html#cfn-kinesisanalyticsv2-application-applicationsnapshotconfiguration-snapshotsenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.CSVMappingParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html",
      "Properties": {
        "RecordColumnDelimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordcolumndelimiter",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RecordRowDelimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordrowdelimiter",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.CheckpointConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html",
      "Properties": {
        "CheckpointInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-checkpointinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CheckpointingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-checkpointingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConfigurationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-configurationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinPauseBetweenCheckpoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-minpausebetweencheckpoints",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.CodeContent": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html",
      "Properties": {
        "S3ContentLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-s3contentlocation",
          "Required": false,
          "Type": "S3ContentLocation",
          "UpdateType": "Mutable"
        },
        "TextContent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-textcontent",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ZipFileContent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-zipfilecontent",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.EnvironmentProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html",
      "Properties": {
        "PropertyGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html#cfn-kinesisanalyticsv2-application-environmentproperties-propertygroups",
          "ItemType": "PropertyGroup",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.FlinkApplicationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html",
      "Properties": {
        "CheckpointConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-checkpointconfiguration",
          "Required": false,
          "Type": "CheckpointConfiguration",
          "UpdateType": "Mutable"
        },
        "MonitoringConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-monitoringconfiguration",
          "Required": false,
          "Type": "MonitoringConfiguration",
          "UpdateType": "Mutable"
        },
        "ParallelismConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-parallelismconfiguration",
          "Required": false,
          "Type": "ParallelismConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.Input": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html",
      "Properties": {
        "InputParallelism": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputparallelism",
          "Required": false,
          "Type": "InputParallelism",
          "UpdateType": "Mutable"
        },
        "InputProcessingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputprocessingconfiguration",
          "Required": false,
          "Type": "InputProcessingConfiguration",
          "UpdateType": "Mutable"
        },
        "InputSchema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputschema",
          "Required": true,
          "Type": "InputSchema",
          "UpdateType": "Mutable"
        },
        "KinesisFirehoseInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisfirehoseinput",
          "Required": false,
          "Type": "KinesisFirehoseInput",
          "UpdateType": "Mutable"
        },
        "KinesisStreamsInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisstreamsinput",
          "Required": false,
          "Type": "KinesisStreamsInput",
          "UpdateType": "Mutable"
        },
        "NamePrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-nameprefix",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.InputLambdaProcessor": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html",
      "Properties": {
        "ResourceARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html#cfn-kinesisanalyticsv2-application-inputlambdaprocessor-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.InputParallelism": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html",
      "Properties": {
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html#cfn-kinesisanalyticsv2-application-inputparallelism-count",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.InputProcessingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html",
      "Properties": {
        "InputLambdaProcessor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html#cfn-kinesisanalyticsv2-application-inputprocessingconfiguration-inputlambdaprocessor",
          "Required": false,
          "Type": "InputLambdaProcessor",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.InputSchema": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html",
      "Properties": {
        "RecordColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordcolumns",
          "ItemType": "RecordColumn",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RecordEncoding": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordencoding",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RecordFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordformat",
          "Required": true,
          "Type": "RecordFormat",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.JSONMappingParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html",
      "Properties": {
        "RecordRowPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html#cfn-kinesisanalyticsv2-application-jsonmappingparameters-recordrowpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.KinesisFirehoseInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html",
      "Properties": {
        "ResourceARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html#cfn-kinesisanalyticsv2-application-kinesisfirehoseinput-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.KinesisStreamsInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html",
      "Properties": {
        "ResourceARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html#cfn-kinesisanalyticsv2-application-kinesisstreamsinput-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.MappingParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html",
      "Properties": {
        "CSVMappingParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-csvmappingparameters",
          "Required": false,
          "Type": "CSVMappingParameters",
          "UpdateType": "Mutable"
        },
        "JSONMappingParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-jsonmappingparameters",
          "Required": false,
          "Type": "JSONMappingParameters",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.MonitoringConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html",
      "Properties": {
        "ConfigurationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-configurationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LogLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-loglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricsLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-metricslevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.ParallelismConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html",
      "Properties": {
        "AutoScalingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-autoscalingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConfigurationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-configurationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Parallelism": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-parallelism",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParallelismPerKPU": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-parallelismperkpu",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.PropertyGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html",
      "Properties": {
        "PropertyGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertygroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropertyMap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertymap",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.RecordColumn": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html",
      "Properties": {
        "Mapping": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-mapping",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SqlType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-sqltype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.RecordFormat": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html",
      "Properties": {
        "MappingParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-mappingparameters",
          "Required": false,
          "Type": "MappingParameters",
          "UpdateType": "Mutable"
        },
        "RecordFormatType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-recordformattype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.S3ContentLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html",
      "Properties": {
        "BucketARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-bucketarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FileKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-filekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application.SqlApplicationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html",
      "Properties": {
        "Inputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-sqlapplicationconfiguration-inputs",
          "ItemType": "Input",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption.CloudWatchLoggingOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html",
      "Properties": {
        "LogStreamARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption-logstreamarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationOutput.DestinationSchema": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html",
      "Properties": {
        "RecordFormatType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html#cfn-kinesisanalyticsv2-applicationoutput-destinationschema-recordformattype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisFirehoseOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html",
      "Properties": {
        "ResourceARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisStreamsOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html",
      "Properties": {
        "ResourceARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationOutput.LambdaOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html",
      "Properties": {
        "ResourceARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html#cfn-kinesisanalyticsv2-applicationoutput-lambdaoutput-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationOutput.Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html",
      "Properties": {
        "DestinationSchema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-destinationschema",
          "Required": true,
          "Type": "DestinationSchema",
          "UpdateType": "Mutable"
        },
        "KinesisFirehoseOutput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisfirehoseoutput",
          "Required": false,
          "Type": "KinesisFirehoseOutput",
          "UpdateType": "Mutable"
        },
        "KinesisStreamsOutput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisstreamsoutput",
          "Required": false,
          "Type": "KinesisStreamsOutput",
          "UpdateType": "Mutable"
        },
        "LambdaOutput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-lambdaoutput",
          "Required": false,
          "Type": "LambdaOutput",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.CSVMappingParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html",
      "Properties": {
        "RecordColumnDelimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordcolumndelimiter",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RecordRowDelimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordrowdelimiter",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.JSONMappingParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html",
      "Properties": {
        "RecordRowPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters-recordrowpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.MappingParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html",
      "Properties": {
        "CSVMappingParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-csvmappingparameters",
          "Required": false,
          "Type": "CSVMappingParameters",
          "UpdateType": "Mutable"
        },
        "JSONMappingParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-jsonmappingparameters",
          "Required": false,
          "Type": "JSONMappingParameters",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordColumn": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html",
      "Properties": {
        "Mapping": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-mapping",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SqlType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-sqltype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordFormat": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html",
      "Properties": {
        "MappingParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-mappingparameters",
          "Required": false,
          "Type": "MappingParameters",
          "UpdateType": "Mutable"
        },
        "RecordFormatType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-recordformattype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceDataSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html",
      "Properties": {
        "ReferenceSchema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-referenceschema",
          "Required": true,
          "Type": "ReferenceSchema",
          "UpdateType": "Mutable"
        },
        "S3ReferenceDataSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-s3referencedatasource",
          "Required": false,
          "Type": "S3ReferenceDataSource",
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-tablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceSchema": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html",
      "Properties": {
        "RecordColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordcolumns",
          "ItemType": "RecordColumn",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RecordEncoding": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordencoding",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RecordFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordformat",
          "Required": true,
          "Type": "RecordFormat",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.S3ReferenceDataSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html",
      "Properties": {
        "BucketARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-bucketarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "FileKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-filekey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.BufferingHints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html",
      "Properties": {
        "IntervalInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-intervalinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SizeInMBs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-sizeinmbs",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.CloudWatchLoggingOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-loggroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogStreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-logstreamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.CopyCommand": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html",
      "Properties": {
        "CopyOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-copyoptions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataTableColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablecolumns",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataTableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.CopyCommand.DataTableName"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.DataFormatConversionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputFormatConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-inputformatconfiguration",
          "Required": false,
          "Type": "InputFormatConfiguration",
          "UpdateType": "Mutable"
        },
        "OutputFormatConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-outputformatconfiguration",
          "Required": false,
          "Type": "OutputFormatConfiguration",
          "UpdateType": "Mutable"
        },
        "SchemaConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-schemaconfiguration",
          "Required": false,
          "Type": "SchemaConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamEncryptionConfigurationInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deliverystreamencryptionconfigurationinput.html",
      "Properties": {
        "KeyARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deliverystreamencryptionconfigurationinput.html#cfn-kinesisfirehose-deliverystream-deliverystreamencryptionconfigurationinput-keyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamEncryptionConfigurationInput.KeyARN"
          }
        },
        "KeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deliverystreamencryptionconfigurationinput.html#cfn-kinesisfirehose-deliverystream-deliverystreamencryptionconfigurationinput-keytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamEncryptionConfigurationInput.KeyType"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.Deserializer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html",
      "Properties": {
        "HiveJsonSerDe": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-hivejsonserde",
          "Required": false,
          "Type": "HiveJsonSerDe",
          "UpdateType": "Mutable"
        },
        "OpenXJsonSerDe": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-openxjsonserde",
          "Required": false,
          "Type": "OpenXJsonSerDe",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchBufferingHints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html",
      "Properties": {
        "IntervalInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-intervalinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SizeInMBs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-sizeinmbs",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html",
      "Properties": {
        "BufferingHints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-bufferinghints",
          "Required": false,
          "Type": "ElasticsearchBufferingHints",
          "UpdateType": "Mutable"
        },
        "CloudWatchLoggingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-cloudwatchloggingoptions",
          "Required": false,
          "Type": "CloudWatchLoggingOptions",
          "UpdateType": "Mutable"
        },
        "ClusterEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-clusterendpoint",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.ClusterEndpoint"
          }
        },
        "DomainARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-domainarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.DomainARN"
          }
        },
        "IndexName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-indexname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.IndexName"
          }
        },
        "IndexRotationPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-indexrotationperiod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.IndexRotationPeriod"
          }
        },
        "ProcessingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-processingconfiguration",
          "Required": false,
          "Type": "ProcessingConfiguration",
          "UpdateType": "Mutable"
        },
        "RetryOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-retryoptions",
          "Required": false,
          "Type": "ElasticsearchRetryOptions",
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.RoleARN"
          }
        },
        "S3BackupMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-s3backupmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.S3BackupMode"
          }
        },
        "S3Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-s3configuration",
          "Required": true,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "TypeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-typename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-vpcconfiguration",
          "Required": false,
          "Type": "VpcConfiguration",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchRetryOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html",
      "Properties": {
        "DurationInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html#cfn-kinesisfirehose-deliverystream-elasticsearchretryoptions-durationinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html",
      "Properties": {
        "KMSEncryptionConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-kmsencryptionconfig",
          "Required": false,
          "Type": "KMSEncryptionConfig",
          "UpdateType": "Mutable"
        },
        "NoEncryptionConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-noencryptionconfig",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration.NoEncryptionConfig"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html",
      "Properties": {
        "BucketARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-bucketarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.BucketARN"
          }
        },
        "BufferingHints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-bufferinghints",
          "Required": false,
          "Type": "BufferingHints",
          "UpdateType": "Mutable"
        },
        "CloudWatchLoggingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-cloudwatchloggingoptions",
          "Required": false,
          "Type": "CloudWatchLoggingOptions",
          "UpdateType": "Mutable"
        },
        "CompressionFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-compressionformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.CompressionFormat"
          }
        },
        "DataFormatConversionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-dataformatconversionconfiguration",
          "Required": false,
          "Type": "DataFormatConversionConfiguration",
          "UpdateType": "Mutable"
        },
        "EncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-encryptionconfiguration",
          "Required": false,
          "Type": "EncryptionConfiguration",
          "UpdateType": "Mutable"
        },
        "ErrorOutputPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-erroroutputprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProcessingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-processingconfiguration",
          "Required": false,
          "Type": "ProcessingConfiguration",
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.RoleARN"
          }
        },
        "S3BackupConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-s3backupconfiguration",
          "Required": false,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "S3BackupMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-s3backupmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.S3BackupMode"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.HiveJsonSerDe": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html",
      "Properties": {
        "TimestampFormats": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html#cfn-kinesisfirehose-deliverystream-hivejsonserde-timestampformats",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointCommonAttribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointcommonattribute.html",
      "Properties": {
        "AttributeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointcommonattribute.html#cfn-kinesisfirehose-deliverystream-httpendpointcommonattribute-attributename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.HttpEndpointCommonAttribute.AttributeName"
          }
        },
        "AttributeValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointcommonattribute.html#cfn-kinesisfirehose-deliverystream-httpendpointcommonattribute-attributevalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointconfiguration.html",
      "Properties": {
        "AccessKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointconfiguration-accesskey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointconfiguration-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.HttpEndpointConfiguration.Name"
          }
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointconfiguration-url",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.HttpEndpointConfiguration.Url"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointDestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html",
      "Properties": {
        "BufferingHints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-bufferinghints",
          "Required": false,
          "Type": "BufferingHints",
          "UpdateType": "Mutable"
        },
        "CloudWatchLoggingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-cloudwatchloggingoptions",
          "Required": false,
          "Type": "CloudWatchLoggingOptions",
          "UpdateType": "Mutable"
        },
        "EndpointConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-endpointconfiguration",
          "Required": true,
          "Type": "HttpEndpointConfiguration",
          "UpdateType": "Mutable"
        },
        "ProcessingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-processingconfiguration",
          "Required": false,
          "Type": "ProcessingConfiguration",
          "UpdateType": "Mutable"
        },
        "RequestConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-requestconfiguration",
          "Required": false,
          "Type": "HttpEndpointRequestConfiguration",
          "UpdateType": "Mutable"
        },
        "RetryOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-retryoptions",
          "Required": false,
          "Type": "RetryOptions",
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.HttpEndpointDestinationConfiguration.RoleARN"
          }
        },
        "S3BackupMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-s3backupmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration-s3configuration",
          "Required": true,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointRequestConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointrequestconfiguration.html",
      "Properties": {
        "CommonAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointrequestconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointrequestconfiguration-commonattributes",
          "DuplicatesAllowed": false,
          "ItemType": "HttpEndpointCommonAttribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ContentEncoding": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-httpendpointrequestconfiguration.html#cfn-kinesisfirehose-deliverystream-httpendpointrequestconfiguration-contentencoding",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.HttpEndpointRequestConfiguration.ContentEncoding"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.InputFormatConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html",
      "Properties": {
        "Deserializer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-inputformatconfiguration-deserializer",
          "Required": false,
          "Type": "Deserializer",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.KMSEncryptionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html",
      "Properties": {
        "AWSKMSKeyARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html#cfn-kinesisfirehose-deliverystream-kmsencryptionconfig-awskmskeyarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html",
      "Properties": {
        "KinesisStreamARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-kinesisstreamarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration.KinesisStreamARN"
          }
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration.RoleARN"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.OpenXJsonSerDe": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html",
      "Properties": {
        "CaseInsensitive": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html#cfn-kinesisfirehose-deliverystream-openxjsonserde-caseinsensitive",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColumnToJsonKeyMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html#cfn-kinesisfirehose-deliverystream-openxjsonserde-columntojsonkeymappings",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "ConvertDotsInJsonKeysToUnderscores": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html#cfn-kinesisfirehose-deliverystream-openxjsonserde-convertdotsinjsonkeystounderscores",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.OrcSerDe": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html",
      "Properties": {
        "BlockSizeBytes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-blocksizebytes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BloomFilterColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-bloomfiltercolumns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "BloomFilterFalsePositiveProbability": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-bloomfilterfalsepositiveprobability",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Compression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-compression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DictionaryKeyThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-dictionarykeythreshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnablePadding": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-enablepadding",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FormatVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-formatversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PaddingTolerance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-paddingtolerance",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RowIndexStride": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-rowindexstride",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StripeSizeBytes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-stripesizebytes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.OutputFormatConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html",
      "Properties": {
        "Serializer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-outputformatconfiguration-serializer",
          "Required": false,
          "Type": "Serializer",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.ParquetSerDe": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html",
      "Properties": {
        "BlockSizeBytes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-blocksizebytes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Compression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-compression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableDictionaryCompression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-enabledictionarycompression",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxPaddingBytes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-maxpaddingbytes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PageSizeBytes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-pagesizebytes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WriterVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-writerversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.ProcessingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Processors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-processors",
          "DuplicatesAllowed": false,
          "ItemType": "Processor",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.Processor": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html",
      "Properties": {
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-parameters",
          "DuplicatesAllowed": false,
          "ItemType": "ProcessorParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.Processor.Type"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.ProcessorParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html",
      "Properties": {
        "ParameterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ParameterValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametervalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html",
      "Properties": {
        "CloudWatchLoggingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-cloudwatchloggingoptions",
          "Required": false,
          "Type": "CloudWatchLoggingOptions",
          "UpdateType": "Mutable"
        },
        "ClusterJDBCURL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-clusterjdbcurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.ClusterJDBCURL"
          }
        },
        "CopyCommand": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-copycommand",
          "Required": true,
          "Type": "CopyCommand",
          "UpdateType": "Mutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.Password"
          }
        },
        "ProcessingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-processingconfiguration",
          "Required": false,
          "Type": "ProcessingConfiguration",
          "UpdateType": "Mutable"
        },
        "RetryOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-retryoptions",
          "Required": false,
          "Type": "RedshiftRetryOptions",
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.RoleARN"
          }
        },
        "S3BackupConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-s3backupconfiguration",
          "Required": false,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "S3BackupMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-s3backupmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.S3BackupMode"
          }
        },
        "S3Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-s3configuration",
          "Required": true,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.Username"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.RedshiftRetryOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftretryoptions.html",
      "Properties": {
        "DurationInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftretryoptions.html#cfn-kinesisfirehose-deliverystream-redshiftretryoptions-durationinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.RetryOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-retryoptions.html",
      "Properties": {
        "DurationInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-retryoptions.html#cfn-kinesisfirehose-deliverystream-retryoptions-durationinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html",
      "Properties": {
        "BucketARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-bucketarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration.BucketARN"
          }
        },
        "BufferingHints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-bufferinghints",
          "Required": false,
          "Type": "BufferingHints",
          "UpdateType": "Mutable"
        },
        "CloudWatchLoggingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-cloudwatchloggingoptions",
          "Required": false,
          "Type": "CloudWatchLoggingOptions",
          "UpdateType": "Mutable"
        },
        "CompressionFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-compressionformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration.CompressionFormat"
          }
        },
        "EncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-encryptionconfiguration",
          "Required": false,
          "Type": "EncryptionConfiguration",
          "UpdateType": "Mutable"
        },
        "ErrorOutputPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-erroroutputprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration.RoleARN"
          }
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.SchemaConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-catalogid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.SchemaConfiguration.RoleARN"
          }
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-tablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VersionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-versionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.Serializer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html",
      "Properties": {
        "OrcSerDe": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-orcserde",
          "Required": false,
          "Type": "OrcSerDe",
          "UpdateType": "Mutable"
        },
        "ParquetSerDe": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-parquetserde",
          "Required": false,
          "Type": "ParquetSerDe",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html",
      "Properties": {
        "CloudWatchLoggingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-cloudwatchloggingoptions",
          "Required": false,
          "Type": "CloudWatchLoggingOptions",
          "UpdateType": "Mutable"
        },
        "HECAcknowledgmentTimeoutInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hecacknowledgmenttimeoutinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration.HECAcknowledgmentTimeoutInSeconds"
          }
        },
        "HECEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hecendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "HECEndpointType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hecendpointtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration.HECEndpointType"
          }
        },
        "HECToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hectoken",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ProcessingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-processingconfiguration",
          "Required": false,
          "Type": "ProcessingConfiguration",
          "UpdateType": "Mutable"
        },
        "RetryOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-retryoptions",
          "Required": false,
          "Type": "SplunkRetryOptions",
          "UpdateType": "Mutable"
        },
        "S3BackupMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-s3backupmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-s3configuration",
          "Required": true,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.SplunkRetryOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html",
      "Properties": {
        "DurationInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html#cfn-kinesisfirehose-deliverystream-splunkretryoptions-durationinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream.VpcConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-vpcconfiguration.html",
      "Properties": {
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-vpcconfiguration.html#cfn-kinesisfirehose-deliverystream-vpcconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.VpcConfiguration.RoleARN"
          }
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-vpcconfiguration.html#cfn-kinesisfirehose-deliverystream-vpcconfiguration-securitygroupids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.VpcConfiguration.SecurityGroupIds"
          }
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-vpcconfiguration.html#cfn-kinesisfirehose-deliverystream-vpcconfiguration-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.VpcConfiguration.SubnetIds"
          }
        }
      }
    },
    "AWS::Lambda::Alias.AliasRoutingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html",
      "Properties": {
        "AdditionalVersionWeights": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html#cfn-lambda-alias-aliasroutingconfiguration-additionalversionweights",
          "DuplicatesAllowed": false,
          "ItemType": "VersionWeight",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Alias.ProvisionedConcurrencyConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-provisionedconcurrencyconfiguration.html",
      "Properties": {
        "ProvisionedConcurrentExecutions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-provisionedconcurrencyconfiguration.html#cfn-lambda-alias-provisionedconcurrencyconfiguration-provisionedconcurrentexecutions",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Alias.VersionWeight": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html",
      "Properties": {
        "FunctionVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html#cfn-lambda-alias-versionweight-functionversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "FunctionWeight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html#cfn-lambda-alias-versionweight-functionweight",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::CodeSigningConfig.AllowedPublishers": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-codesigningconfig-allowedpublishers.html",
      "Properties": {
        "SigningProfileVersionArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-codesigningconfig-allowedpublishers.html#cfn-lambda-codesigningconfig-allowedpublishers-signingprofileversionarns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::CodeSigningConfig.AllowedPublishers.SigningProfileVersionArns"
          }
        }
      }
    },
    "AWS::Lambda::CodeSigningConfig.CodeSigningPolicies": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-codesigningconfig-codesigningpolicies.html",
      "Properties": {
        "UntrustedArtifactOnDeployment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-codesigningconfig-codesigningpolicies.html#cfn-lambda-codesigningconfig-codesigningpolicies-untrustedartifactondeployment",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::CodeSigningConfig.CodeSigningPolicies.UntrustedArtifactOnDeployment"
          }
        }
      }
    },
    "AWS::Lambda::EventInvokeConfig.DestinationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig.html",
      "Properties": {
        "OnFailure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig.html#cfn-lambda-eventinvokeconfig-destinationconfig-onfailure",
          "Required": false,
          "Type": "OnFailure",
          "UpdateType": "Mutable"
        },
        "OnSuccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig.html#cfn-lambda-eventinvokeconfig-destinationconfig-onsuccess",
          "Required": false,
          "Type": "OnSuccess",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::EventInvokeConfig.OnFailure": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onfailure.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onfailure.html#cfn-lambda-eventinvokeconfig-destinationconfig-onfailure-destination",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::EventInvokeConfig.OnSuccess": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onsuccess.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onsuccess.html#cfn-lambda-eventinvokeconfig-destinationconfig-onsuccess-destination",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::EventSourceMapping.DestinationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html",
      "Properties": {
        "OnFailure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html#cfn-lambda-eventsourcemapping-destinationconfig-onfailure",
          "Required": false,
          "Type": "OnFailure",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::EventSourceMapping.Endpoints": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-endpoints.html",
      "Properties": {
        "KafkaBootstrapServers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-endpoints.html#cfn-lambda-eventsourcemapping-endpoints-kafkabootstrapservers",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.Endpoints.KafkaBootstrapServers"
          }
        }
      }
    },
    "AWS::Lambda::EventSourceMapping.OnFailure": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-onfailure.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-onfailure.html#cfn-lambda-eventsourcemapping-onfailure-destination",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.OnFailure.Destination"
          }
        }
      }
    },
    "AWS::Lambda::EventSourceMapping.SelfManagedEventSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-selfmanagedeventsource.html",
      "Properties": {
        "Endpoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-selfmanagedeventsource.html#cfn-lambda-eventsourcemapping-selfmanagedeventsource-endpoints",
          "Required": false,
          "Type": "Endpoints",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Lambda::EventSourceMapping.SourceAccessConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html#cfn-lambda-eventsourcemapping-sourceaccessconfiguration-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.SourceAccessConfiguration.Type"
          }
        },
        "URI": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html#cfn-lambda-eventsourcemapping-sourceaccessconfiguration-uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.SourceAccessConfiguration.URI"
          }
        }
      }
    },
    "AWS::Lambda::Function.Code": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html",
      "Properties": {
        "ImageUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3bucket",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ZipFile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Function.DeadLetterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html",
      "Properties": {
        "TargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Function.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html",
      "Properties": {
        "Variables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html#cfn-lambda-function-environment-variables",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Function.FileSystemConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html#cfn-lambda-function-filesystemconfig-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LocalMountPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html#cfn-lambda-function-filesystemconfig-localmountpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Function.ImageConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-imageconfig.html",
      "Properties": {
        "Command": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-imageconfig.html#cfn-lambda-function-imageconfig-command",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EntryPoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-imageconfig.html#cfn-lambda-function-imageconfig-entrypoint",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "WorkingDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-imageconfig.html#cfn-lambda-function-imageconfig-workingdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Function.TracingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html",
      "Properties": {
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html#cfn-lambda-function-tracingconfig-mode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Function.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-securitygroupids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::LayerVersion.Content": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html",
      "Properties": {
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "S3ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Lambda::Version.ProvisionedConcurrencyConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-version-provisionedconcurrencyconfiguration.html",
      "Properties": {
        "ProvisionedConcurrentExecutions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-version-provisionedconcurrencyconfiguration.html#cfn-lambda-version-provisionedconcurrencyconfiguration-provisionedconcurrentexecutions",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License.BorrowConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-borrowconfiguration.html",
      "Properties": {
        "AllowEarlyCheckIn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-borrowconfiguration.html#cfn-licensemanager-license-borrowconfiguration-allowearlycheckin",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaxTimeToLiveInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-borrowconfiguration.html#cfn-licensemanager-license-borrowconfiguration-maxtimetoliveinminutes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License.ConsumptionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-consumptionconfiguration.html",
      "Properties": {
        "BorrowConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-consumptionconfiguration.html#cfn-licensemanager-license-consumptionconfiguration-borrowconfiguration",
          "Required": false,
          "Type": "BorrowConfiguration",
          "UpdateType": "Mutable"
        },
        "ProvisionalConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-consumptionconfiguration.html#cfn-licensemanager-license-consumptionconfiguration-provisionalconfiguration",
          "Required": false,
          "Type": "ProvisionalConfiguration",
          "UpdateType": "Mutable"
        },
        "RenewType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-consumptionconfiguration.html#cfn-licensemanager-license-consumptionconfiguration-renewtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License.Entitlement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-entitlement.html",
      "Properties": {
        "AllowCheckIn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-entitlement.html#cfn-licensemanager-license-entitlement-allowcheckin",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-entitlement.html#cfn-licensemanager-license-entitlement-maxcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-entitlement.html#cfn-licensemanager-license-entitlement-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Overage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-entitlement.html#cfn-licensemanager-license-entitlement-overage",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-entitlement.html#cfn-licensemanager-license-entitlement-unit",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-entitlement.html#cfn-licensemanager-license-entitlement-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License.IssuerData": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-issuerdata.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-issuerdata.html#cfn-licensemanager-license-issuerdata-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SignKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-issuerdata.html#cfn-licensemanager-license-issuerdata-signkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License.Metadata": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-metadata.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-metadata.html#cfn-licensemanager-license-metadata-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-metadata.html#cfn-licensemanager-license-metadata-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License.ProvisionalConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-provisionalconfiguration.html",
      "Properties": {
        "MaxTimeToLiveInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-provisionalconfiguration.html#cfn-licensemanager-license-provisionalconfiguration-maxtimetoliveinminutes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License.ValidityDateFormat": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-validitydateformat.html",
      "Properties": {
        "Begin": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-validitydateformat.html#cfn-licensemanager-license-validitydateformat-begin",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "End": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-licensemanager-license-validitydateformat.html#cfn-licensemanager-license-validitydateformat-end",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Logs::MetricFilter.MetricTransformation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html",
      "Properties": {
        "DefaultValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-defaultvalue",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricNamespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricnamespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricvalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Logs::MetricFilter.MetricTransformation.MetricValue"
          }
        }
      }
    },
    "AWS::MSK::Cluster.BrokerLogs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokerlogs.html",
      "Properties": {
        "CloudWatchLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokerlogs.html#cfn-msk-cluster-brokerlogs-cloudwatchlogs",
          "Required": false,
          "Type": "CloudWatchLogs",
          "UpdateType": "Mutable"
        },
        "Firehose": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokerlogs.html#cfn-msk-cluster-brokerlogs-firehose",
          "Required": false,
          "Type": "Firehose",
          "UpdateType": "Mutable"
        },
        "S3": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokerlogs.html#cfn-msk-cluster-brokerlogs-s3",
          "Required": false,
          "Type": "S3",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.BrokerNodeGroupInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html",
      "Properties": {
        "BrokerAZDistribution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-brokerazdistribution",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClientSubnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-clientsubnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-securitygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "StorageInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-storageinfo",
          "Required": false,
          "Type": "StorageInfo",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.ClientAuthentication": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html",
      "Properties": {
        "Sasl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html#cfn-msk-cluster-clientauthentication-sasl",
          "Required": false,
          "Type": "Sasl",
          "UpdateType": "Immutable"
        },
        "Tls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html#cfn-msk-cluster-clientauthentication-tls",
          "Required": false,
          "Type": "Tls",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.CloudWatchLogs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-cloudwatchlogs.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-cloudwatchlogs.html#cfn-msk-cluster-cloudwatchlogs-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LogGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-cloudwatchlogs.html#cfn-msk-cluster-cloudwatchlogs-loggroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.ConfigurationInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Revision": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-revision",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.EBSStorageInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html",
      "Properties": {
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html#cfn-msk-cluster-ebsstorageinfo-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.EncryptionAtRest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html",
      "Properties": {
        "DataVolumeKMSKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html#cfn-msk-cluster-encryptionatrest-datavolumekmskeyid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.EncryptionInTransit": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html",
      "Properties": {
        "ClientBroker": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-clientbroker",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InCluster": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-incluster",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.EncryptionInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html",
      "Properties": {
        "EncryptionAtRest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionatrest",
          "Required": false,
          "Type": "EncryptionAtRest",
          "UpdateType": "Immutable"
        },
        "EncryptionInTransit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionintransit",
          "Required": false,
          "Type": "EncryptionInTransit",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.Firehose": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-firehose.html",
      "Properties": {
        "DeliveryStream": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-firehose.html#cfn-msk-cluster-firehose-deliverystream",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-firehose.html#cfn-msk-cluster-firehose-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.JmxExporter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-jmxexporter.html",
      "Properties": {
        "EnabledInBroker": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-jmxexporter.html#cfn-msk-cluster-jmxexporter-enabledinbroker",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.LoggingInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-logginginfo.html",
      "Properties": {
        "BrokerLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-logginginfo.html#cfn-msk-cluster-logginginfo-brokerlogs",
          "Required": true,
          "Type": "BrokerLogs",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.NodeExporter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-nodeexporter.html",
      "Properties": {
        "EnabledInBroker": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-nodeexporter.html#cfn-msk-cluster-nodeexporter-enabledinbroker",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.OpenMonitoring": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-openmonitoring.html",
      "Properties": {
        "Prometheus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-openmonitoring.html#cfn-msk-cluster-openmonitoring-prometheus",
          "Required": true,
          "Type": "Prometheus",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.Prometheus": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-prometheus.html",
      "Properties": {
        "JmxExporter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-prometheus.html#cfn-msk-cluster-prometheus-jmxexporter",
          "Required": false,
          "Type": "JmxExporter",
          "UpdateType": "Mutable"
        },
        "NodeExporter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-prometheus.html#cfn-msk-cluster-prometheus-nodeexporter",
          "Required": false,
          "Type": "NodeExporter",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.S3": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-s3.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-s3.html#cfn-msk-cluster-s3-bucket",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-s3.html#cfn-msk-cluster-s3-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-s3.html#cfn-msk-cluster-s3-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MSK::Cluster.Sasl": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-sasl.html",
      "Properties": {
        "Scram": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-sasl.html#cfn-msk-cluster-sasl-scram",
          "Required": true,
          "Type": "Scram",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.Scram": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-scram.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-scram.html#cfn-msk-cluster-scram-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.StorageInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html",
      "Properties": {
        "EBSStorageInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html#cfn-msk-cluster-storageinfo-ebsstorageinfo",
          "Required": false,
          "Type": "EBSStorageInfo",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MSK::Cluster.Tls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-tls.html",
      "Properties": {
        "CertificateAuthorityArnList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-tls.html#cfn-msk-cluster-tls-certificateauthorityarnlist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MWAA::Environment.AirflowConfigurationOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-airflowconfigurationoptions.html"
    },
    "AWS::MWAA::Environment.LoggingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-loggingconfiguration.html",
      "Properties": {
        "DagProcessingLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-loggingconfiguration.html#cfn-mwaa-environment-loggingconfiguration-dagprocessinglogs",
          "Required": false,
          "Type": "ModuleLoggingConfiguration",
          "UpdateType": "Mutable"
        },
        "SchedulerLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-loggingconfiguration.html#cfn-mwaa-environment-loggingconfiguration-schedulerlogs",
          "Required": false,
          "Type": "ModuleLoggingConfiguration",
          "UpdateType": "Mutable"
        },
        "TaskLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-loggingconfiguration.html#cfn-mwaa-environment-loggingconfiguration-tasklogs",
          "Required": false,
          "Type": "ModuleLoggingConfiguration",
          "UpdateType": "Mutable"
        },
        "WebserverLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-loggingconfiguration.html#cfn-mwaa-environment-loggingconfiguration-webserverlogs",
          "Required": false,
          "Type": "ModuleLoggingConfiguration",
          "UpdateType": "Mutable"
        },
        "WorkerLogs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-loggingconfiguration.html#cfn-mwaa-environment-loggingconfiguration-workerlogs",
          "Required": false,
          "Type": "ModuleLoggingConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MWAA::Environment.ModuleLoggingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-moduleloggingconfiguration.html",
      "Properties": {
        "CloudWatchLogGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-moduleloggingconfiguration.html#cfn-mwaa-environment-moduleloggingconfiguration-cloudwatchloggrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.ModuleLoggingConfiguration.CloudWatchLogGroupArn"
          }
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-moduleloggingconfiguration.html#cfn-mwaa-environment-moduleloggingconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-moduleloggingconfiguration.html#cfn-mwaa-environment-moduleloggingconfiguration-loglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.ModuleLoggingConfiguration.LogLevel"
          }
        }
      }
    },
    "AWS::MWAA::Environment.NetworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-networkconfiguration.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-networkconfiguration.html#cfn-mwaa-environment-networkconfiguration-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.NetworkConfiguration.SecurityGroupIds"
          }
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-networkconfiguration.html#cfn-mwaa-environment-networkconfiguration-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.NetworkConfiguration.SubnetIds"
          }
        }
      }
    },
    "AWS::MWAA::Environment.TagMap": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mwaa-environment-tagmap.html"
    },
    "AWS::Macie::FindingsFilter.Criterion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-macie-findingsfilter-criterion.html"
    },
    "AWS::Macie::FindingsFilter.FindingCriteria": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-macie-findingsfilter-findingcriteria.html",
      "Properties": {
        "Criterion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-macie-findingsfilter-findingcriteria.html#cfn-macie-findingsfilter-findingcriteria-criterion",
          "Required": false,
          "Type": "Criterion",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Macie::FindingsFilter.FindingsFilterListItem": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-macie-findingsfilter-findingsfilterlistitem.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-macie-findingsfilter-findingsfilterlistitem.html#cfn-macie-findingsfilter-findingsfilterlistitem-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-macie-findingsfilter-findingsfilterlistitem.html#cfn-macie-findingsfilter-findingsfilterlistitem-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.ApprovalThresholdPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html",
      "Properties": {
        "ProposalDurationInHours": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-proposaldurationinhours",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThresholdComparator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdcomparator",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThresholdPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdpercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.MemberConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MemberFrameworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-memberframeworkconfiguration",
          "Required": false,
          "Type": "MemberFrameworkConfiguration",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.MemberFabricConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html",
      "Properties": {
        "AdminPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminpassword",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AdminUsername": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminusername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.MemberFrameworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html",
      "Properties": {
        "MemberFabricConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html#cfn-managedblockchain-member-memberframeworkconfiguration-memberfabricconfiguration",
          "Required": false,
          "Type": "MemberFabricConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.NetworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Framework": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-framework",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "FrameworkVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-frameworkversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "NetworkFrameworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-networkframeworkconfiguration",
          "Required": false,
          "Type": "NetworkFrameworkConfiguration",
          "UpdateType": "Mutable"
        },
        "VotingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-votingpolicy",
          "Required": true,
          "Type": "VotingPolicy",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.NetworkFabricConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html",
      "Properties": {
        "Edition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html#cfn-managedblockchain-member-networkfabricconfiguration-edition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.NetworkFrameworkConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html",
      "Properties": {
        "NetworkFabricConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html#cfn-managedblockchain-member-networkframeworkconfiguration-networkfabricconfiguration",
          "Required": false,
          "Type": "NetworkFabricConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Member.VotingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html",
      "Properties": {
        "ApprovalThresholdPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html#cfn-managedblockchain-member-votingpolicy-approvalthresholdpolicy",
          "Required": false,
          "Type": "ApprovalThresholdPolicy",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Node.NodeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-availabilityzone",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "BlockchainInstanceType"
          }
        }
      }
    },
    "AWS::MediaConnect::Flow.Encryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html",
      "Properties": {
        "Algorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-algorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::Flow.Encryption.Algorithm"
          }
        },
        "ConstantInitializationVector": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-constantinitializationvector",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-deviceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-keytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::Flow.Encryption.KeyType"
          }
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecretArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-secretarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-encryption.html#cfn-mediaconnect-flow-encryption-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::Flow.FailoverConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-failoverconfig.html",
      "Properties": {
        "RecoveryWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-failoverconfig.html#cfn-mediaconnect-flow-failoverconfig-recoverywindow",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-failoverconfig.html#cfn-mediaconnect-flow-failoverconfig-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::Flow.FailoverConfig.State"
          }
        }
      }
    },
    "AWS::MediaConnect::Flow.Source": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html",
      "Properties": {
        "Decryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-decryption",
          "Required": false,
          "Type": "Encryption",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EntitlementArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-entitlementarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IngestIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-ingestip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IngestPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-ingestport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxBitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-maxbitrate",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxLatency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-maxlatency",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::Flow.Source.Protocol"
          }
        },
        "SourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-sourcearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-streamid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcInterfaceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-vpcinterfacename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WhitelistCidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-whitelistcidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowEntitlement.Encryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html",
      "Properties": {
        "Algorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-algorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowEntitlement.Encryption.Algorithm"
          }
        },
        "ConstantInitializationVector": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-constantinitializationvector",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-deviceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-keytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowEntitlement.Encryption.KeyType"
          }
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecretArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-secretarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowentitlement-encryption.html#cfn-mediaconnect-flowentitlement-encryption-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowOutput.Encryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encryption.html",
      "Properties": {
        "Algorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encryption.html#cfn-mediaconnect-flowoutput-encryption-algorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowOutput.Encryption.Algorithm"
          }
        },
        "KeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encryption.html#cfn-mediaconnect-flowoutput-encryption-keytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowOutput.Encryption.KeyType"
          }
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encryption.html#cfn-mediaconnect-flowoutput-encryption-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecretArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encryption.html#cfn-mediaconnect-flowoutput-encryption-secretarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowOutput.VpcInterfaceAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-vpcinterfaceattachment.html",
      "Properties": {
        "VpcInterfaceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-vpcinterfaceattachment.html#cfn-mediaconnect-flowoutput-vpcinterfaceattachment-vpcinterfacename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowSource.Encryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html",
      "Properties": {
        "Algorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-algorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowSource.Encryption.Algorithm"
          }
        },
        "ConstantInitializationVector": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-constantinitializationvector",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-deviceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-keytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowSource.Encryption.KeyType"
          }
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecretArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-secretarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowsource-encryption.html#cfn-mediaconnect-flowsource-encryption-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConvert::JobTemplate.AccelerationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconvert-jobtemplate-accelerationsettings.html",
      "Properties": {
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconvert-jobtemplate-accelerationsettings.html#cfn-mediaconvert-jobtemplate-accelerationsettings-mode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConvert::JobTemplate.HopDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconvert-jobtemplate-hopdestination.html",
      "Properties": {
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconvert-jobtemplate-hopdestination.html#cfn-mediaconvert-jobtemplate-hopdestination-priority",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Queue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconvert-jobtemplate-hopdestination.html#cfn-mediaconvert-jobtemplate-hopdestination-queue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WaitMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconvert-jobtemplate-hopdestination.html#cfn-mediaconvert-jobtemplate-hopdestination-waitminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AacSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html",
      "Properties": {
        "Bitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-bitrate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CodingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-codingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-inputtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Profile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-profile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RateControlMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-ratecontrolmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RawFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-rawformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SampleRate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-samplerate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-spec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VbrQuality": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aacsettings.html#cfn-medialive-channel-aacsettings-vbrquality",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Ac3Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html",
      "Properties": {
        "Bitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html#cfn-medialive-channel-ac3settings-bitrate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BitstreamMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html#cfn-medialive-channel-ac3settings-bitstreammode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CodingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html#cfn-medialive-channel-ac3settings-codingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Dialnorm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html#cfn-medialive-channel-ac3settings-dialnorm",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DrcProfile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html#cfn-medialive-channel-ac3settings-drcprofile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LfeFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html#cfn-medialive-channel-ac3settings-lfefilter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetadataControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ac3settings.html#cfn-medialive-channel-ac3settings-metadatacontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AncillarySourceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ancillarysourcesettings.html",
      "Properties": {
        "SourceAncillaryChannelNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ancillarysourcesettings.html#cfn-medialive-channel-ancillarysourcesettings-sourceancillarychannelnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.ArchiveContainerSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archivecontainersettings.html",
      "Properties": {
        "M2tsSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archivecontainersettings.html#cfn-medialive-channel-archivecontainersettings-m2tssettings",
          "Required": false,
          "Type": "M2tsSettings",
          "UpdateType": "Mutable"
        },
        "RawSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archivecontainersettings.html#cfn-medialive-channel-archivecontainersettings-rawsettings",
          "Required": false,
          "Type": "RawSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.ArchiveGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archivegroupsettings.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archivegroupsettings.html#cfn-medialive-channel-archivegroupsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        },
        "RolloverInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archivegroupsettings.html#cfn-medialive-channel-archivegroupsettings-rolloverinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.ArchiveOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archiveoutputsettings.html",
      "Properties": {
        "ContainerSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archiveoutputsettings.html#cfn-medialive-channel-archiveoutputsettings-containersettings",
          "Required": false,
          "Type": "ArchiveContainerSettings",
          "UpdateType": "Mutable"
        },
        "Extension": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archiveoutputsettings.html#cfn-medialive-channel-archiveoutputsettings-extension",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NameModifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-archiveoutputsettings.html#cfn-medialive-channel-archiveoutputsettings-namemodifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AribDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aribdestinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.AribSourceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aribsourcesettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.AudioChannelMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiochannelmapping.html",
      "Properties": {
        "InputChannelLevels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiochannelmapping.html#cfn-medialive-channel-audiochannelmapping-inputchannellevels",
          "ItemType": "InputChannelLevel",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OutputChannel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiochannelmapping.html#cfn-medialive-channel-audiochannelmapping-outputchannel",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioCodecSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiocodecsettings.html",
      "Properties": {
        "AacSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiocodecsettings.html#cfn-medialive-channel-audiocodecsettings-aacsettings",
          "Required": false,
          "Type": "AacSettings",
          "UpdateType": "Mutable"
        },
        "Ac3Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiocodecsettings.html#cfn-medialive-channel-audiocodecsettings-ac3settings",
          "Required": false,
          "Type": "Ac3Settings",
          "UpdateType": "Mutable"
        },
        "Eac3Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiocodecsettings.html#cfn-medialive-channel-audiocodecsettings-eac3settings",
          "Required": false,
          "Type": "Eac3Settings",
          "UpdateType": "Mutable"
        },
        "Mp2Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiocodecsettings.html#cfn-medialive-channel-audiocodecsettings-mp2settings",
          "Required": false,
          "Type": "Mp2Settings",
          "UpdateType": "Mutable"
        },
        "PassThroughSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiocodecsettings.html#cfn-medialive-channel-audiocodecsettings-passthroughsettings",
          "Required": false,
          "Type": "PassThroughSettings",
          "UpdateType": "Mutable"
        },
        "WavSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiocodecsettings.html#cfn-medialive-channel-audiocodecsettings-wavsettings",
          "Required": false,
          "Type": "WavSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioDescription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html",
      "Properties": {
        "AudioNormalizationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-audionormalizationsettings",
          "Required": false,
          "Type": "AudioNormalizationSettings",
          "UpdateType": "Mutable"
        },
        "AudioSelectorName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-audioselectorname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-audiotype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioTypeControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-audiotypecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CodecSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-codecsettings",
          "Required": false,
          "Type": "AudioCodecSettings",
          "UpdateType": "Mutable"
        },
        "LanguageCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-languagecode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LanguageCodeControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-languagecodecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemixSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-remixsettings",
          "Required": false,
          "Type": "RemixSettings",
          "UpdateType": "Mutable"
        },
        "StreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiodescription.html#cfn-medialive-channel-audiodescription-streamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioLanguageSelection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html",
      "Properties": {
        "LanguageCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languagecode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LanguageSelectionPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languageselectionpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioNormalizationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audionormalizationsettings.html",
      "Properties": {
        "Algorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audionormalizationsettings.html#cfn-medialive-channel-audionormalizationsettings-algorithm",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AlgorithmControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audionormalizationsettings.html#cfn-medialive-channel-audionormalizationsettings-algorithmcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetLkfs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audionormalizationsettings.html#cfn-medialive-channel-audionormalizationsettings-targetlkfs",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioOnlyHlsSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioonlyhlssettings.html",
      "Properties": {
        "AudioGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioonlyhlssettings.html#cfn-medialive-channel-audioonlyhlssettings-audiogroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioOnlyImage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioonlyhlssettings.html#cfn-medialive-channel-audioonlyhlssettings-audioonlyimage",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "AudioTrackType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioonlyhlssettings.html#cfn-medialive-channel-audioonlyhlssettings-audiotracktype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioonlyhlssettings.html#cfn-medialive-channel-audioonlyhlssettings-segmenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioPidSelection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html",
      "Properties": {
        "Pid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html#cfn-medialive-channel-audiopidselection-pid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioSelector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SelectorSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-selectorsettings",
          "Required": false,
          "Type": "AudioSelectorSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioSelectorSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html",
      "Properties": {
        "AudioLanguageSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiolanguageselection",
          "Required": false,
          "Type": "AudioLanguageSelection",
          "UpdateType": "Mutable"
        },
        "AudioPidSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiopidselection",
          "Required": false,
          "Type": "AudioPidSelection",
          "UpdateType": "Mutable"
        },
        "AudioTrackSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiotrackselection",
          "Required": false,
          "Type": "AudioTrackSelection",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioSilenceFailoverSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiosilencefailoversettings.html",
      "Properties": {
        "AudioSelectorName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiosilencefailoversettings.html#cfn-medialive-channel-audiosilencefailoversettings-audioselectorname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioSilenceThresholdMsec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiosilencefailoversettings.html#cfn-medialive-channel-audiosilencefailoversettings-audiosilencethresholdmsec",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioTrack": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiotrack.html",
      "Properties": {
        "Track": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiotrack.html#cfn-medialive-channel-audiotrack-track",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AudioTrackSelection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiotrackselection.html",
      "Properties": {
        "Tracks": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiotrackselection.html#cfn-medialive-channel-audiotrackselection-tracks",
          "ItemType": "AudioTrack",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AutomaticInputFailoverSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-automaticinputfailoversettings.html",
      "Properties": {
        "ErrorClearTimeMsec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-automaticinputfailoversettings.html#cfn-medialive-channel-automaticinputfailoversettings-errorcleartimemsec",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FailoverConditions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-automaticinputfailoversettings.html#cfn-medialive-channel-automaticinputfailoversettings-failoverconditions",
          "ItemType": "FailoverCondition",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InputPreference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-automaticinputfailoversettings.html#cfn-medialive-channel-automaticinputfailoversettings-inputpreference",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecondaryInputId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-automaticinputfailoversettings.html#cfn-medialive-channel-automaticinputfailoversettings-secondaryinputid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AvailBlanking": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availblanking.html",
      "Properties": {
        "AvailBlankingImage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availblanking.html#cfn-medialive-channel-availblanking-availblankingimage",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availblanking.html#cfn-medialive-channel-availblanking-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AvailConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availconfiguration.html",
      "Properties": {
        "AvailSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availconfiguration.html#cfn-medialive-channel-availconfiguration-availsettings",
          "Required": false,
          "Type": "AvailSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.AvailSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availsettings.html",
      "Properties": {
        "Scte35SpliceInsert": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availsettings.html#cfn-medialive-channel-availsettings-scte35spliceinsert",
          "Required": false,
          "Type": "Scte35SpliceInsert",
          "UpdateType": "Mutable"
        },
        "Scte35TimeSignalApos": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availsettings.html#cfn-medialive-channel-availsettings-scte35timesignalapos",
          "Required": false,
          "Type": "Scte35TimeSignalApos",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.BlackoutSlate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-blackoutslate.html",
      "Properties": {
        "BlackoutSlateImage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-blackoutslate.html#cfn-medialive-channel-blackoutslate-blackoutslateimage",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "NetworkEndBlackout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-blackoutslate.html#cfn-medialive-channel-blackoutslate-networkendblackout",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkEndBlackoutImage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-blackoutslate.html#cfn-medialive-channel-blackoutslate-networkendblackoutimage",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "NetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-blackoutslate.html#cfn-medialive-channel-blackoutslate-networkid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-blackoutslate.html#cfn-medialive-channel-blackoutslate-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.BurnInDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html",
      "Properties": {
        "Alignment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-alignment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BackgroundColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-backgroundcolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BackgroundOpacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-backgroundopacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Font": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-font",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "FontColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-fontcolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FontOpacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-fontopacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FontResolution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-fontresolution",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FontSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-fontsize",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutlineColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-outlinecolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutlineSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-outlinesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-shadowcolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowOpacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-shadowopacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowXOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-shadowxoffset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowYOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-shadowyoffset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TeletextGridControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-teletextgridcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "XPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-xposition",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "YPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-burnindestinationsettings.html#cfn-medialive-channel-burnindestinationsettings-yposition",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.CaptionDescription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondescription.html",
      "Properties": {
        "CaptionSelectorName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondescription.html#cfn-medialive-channel-captiondescription-captionselectorname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondescription.html#cfn-medialive-channel-captiondescription-destinationsettings",
          "Required": false,
          "Type": "CaptionDestinationSettings",
          "UpdateType": "Mutable"
        },
        "LanguageCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondescription.html#cfn-medialive-channel-captiondescription-languagecode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LanguageDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondescription.html#cfn-medialive-channel-captiondescription-languagedescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondescription.html#cfn-medialive-channel-captiondescription-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.CaptionDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html",
      "Properties": {
        "AribDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-aribdestinationsettings",
          "Required": false,
          "Type": "AribDestinationSettings",
          "UpdateType": "Mutable"
        },
        "BurnInDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-burnindestinationsettings",
          "Required": false,
          "Type": "BurnInDestinationSettings",
          "UpdateType": "Mutable"
        },
        "DvbSubDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-dvbsubdestinationsettings",
          "Required": false,
          "Type": "DvbSubDestinationSettings",
          "UpdateType": "Mutable"
        },
        "EbuTtDDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-ebuttddestinationsettings",
          "Required": false,
          "Type": "EbuTtDDestinationSettings",
          "UpdateType": "Mutable"
        },
        "EmbeddedDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-embeddeddestinationsettings",
          "Required": false,
          "Type": "EmbeddedDestinationSettings",
          "UpdateType": "Mutable"
        },
        "EmbeddedPlusScte20DestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-embeddedplusscte20destinationsettings",
          "Required": false,
          "Type": "EmbeddedPlusScte20DestinationSettings",
          "UpdateType": "Mutable"
        },
        "RtmpCaptionInfoDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-rtmpcaptioninfodestinationsettings",
          "Required": false,
          "Type": "RtmpCaptionInfoDestinationSettings",
          "UpdateType": "Mutable"
        },
        "Scte20PlusEmbeddedDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-scte20plusembeddeddestinationsettings",
          "Required": false,
          "Type": "Scte20PlusEmbeddedDestinationSettings",
          "UpdateType": "Mutable"
        },
        "Scte27DestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-scte27destinationsettings",
          "Required": false,
          "Type": "Scte27DestinationSettings",
          "UpdateType": "Mutable"
        },
        "SmpteTtDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-smptettdestinationsettings",
          "Required": false,
          "Type": "SmpteTtDestinationSettings",
          "UpdateType": "Mutable"
        },
        "TeletextDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-teletextdestinationsettings",
          "Required": false,
          "Type": "TeletextDestinationSettings",
          "UpdateType": "Mutable"
        },
        "TtmlDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-ttmldestinationsettings",
          "Required": false,
          "Type": "TtmlDestinationSettings",
          "UpdateType": "Mutable"
        },
        "WebvttDestinationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captiondestinationsettings.html#cfn-medialive-channel-captiondestinationsettings-webvttdestinationsettings",
          "Required": false,
          "Type": "WebvttDestinationSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.CaptionLanguageMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionlanguagemapping.html",
      "Properties": {
        "CaptionChannel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionlanguagemapping.html#cfn-medialive-channel-captionlanguagemapping-captionchannel",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LanguageCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionlanguagemapping.html#cfn-medialive-channel-captionlanguagemapping-languagecode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LanguageDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionlanguagemapping.html#cfn-medialive-channel-captionlanguagemapping-languagedescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.CaptionSelector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html",
      "Properties": {
        "LanguageCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-languagecode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SelectorSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-selectorsettings",
          "Required": false,
          "Type": "CaptionSelectorSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.CaptionSelectorSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html",
      "Properties": {
        "AncillarySourceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-ancillarysourcesettings",
          "Required": false,
          "Type": "AncillarySourceSettings",
          "UpdateType": "Mutable"
        },
        "AribSourceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-aribsourcesettings",
          "Required": false,
          "Type": "AribSourceSettings",
          "UpdateType": "Mutable"
        },
        "DvbSubSourceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-dvbsubsourcesettings",
          "Required": false,
          "Type": "DvbSubSourceSettings",
          "UpdateType": "Mutable"
        },
        "EmbeddedSourceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-embeddedsourcesettings",
          "Required": false,
          "Type": "EmbeddedSourceSettings",
          "UpdateType": "Mutable"
        },
        "Scte20SourceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte20sourcesettings",
          "Required": false,
          "Type": "Scte20SourceSettings",
          "UpdateType": "Mutable"
        },
        "Scte27SourceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte27sourcesettings",
          "Required": false,
          "Type": "Scte27SourceSettings",
          "UpdateType": "Mutable"
        },
        "TeletextSourceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-teletextsourcesettings",
          "Required": false,
          "Type": "TeletextSourceSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.CdiInputSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-cdiinputspecification.html",
      "Properties": {
        "Resolution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-cdiinputspecification.html#cfn-medialive-channel-cdiinputspecification-resolution",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.ColorSpacePassthroughSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-colorspacepassthroughsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.DvbNitSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbnitsettings.html",
      "Properties": {
        "NetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbnitsettings.html#cfn-medialive-channel-dvbnitsettings-networkid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbnitsettings.html#cfn-medialive-channel-dvbnitsettings-networkname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbnitsettings.html#cfn-medialive-channel-dvbnitsettings-repinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.DvbSdtSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsdtsettings.html",
      "Properties": {
        "OutputSdt": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsdtsettings.html#cfn-medialive-channel-dvbsdtsettings-outputsdt",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsdtsettings.html#cfn-medialive-channel-dvbsdtsettings-repinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsdtsettings.html#cfn-medialive-channel-dvbsdtsettings-servicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceProviderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsdtsettings.html#cfn-medialive-channel-dvbsdtsettings-serviceprovidername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.DvbSubDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html",
      "Properties": {
        "Alignment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-alignment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BackgroundColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-backgroundcolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BackgroundOpacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-backgroundopacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Font": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-font",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "FontColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-fontcolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FontOpacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-fontopacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FontResolution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-fontresolution",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FontSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-fontsize",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutlineColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-outlinecolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutlineSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-outlinesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-shadowcolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowOpacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-shadowopacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowXOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-shadowxoffset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShadowYOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-shadowyoffset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TeletextGridControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-teletextgridcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "XPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-xposition",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "YPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubdestinationsettings.html#cfn-medialive-channel-dvbsubdestinationsettings-yposition",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.DvbSubSourceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html",
      "Properties": {
        "Pid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html#cfn-medialive-channel-dvbsubsourcesettings-pid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.DvbTdtSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbtdtsettings.html",
      "Properties": {
        "RepInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbtdtsettings.html#cfn-medialive-channel-dvbtdtsettings-repinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Eac3Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html",
      "Properties": {
        "AttenuationControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-attenuationcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Bitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-bitrate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BitstreamMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-bitstreammode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CodingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-codingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DcFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-dcfilter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Dialnorm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-dialnorm",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DrcLine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-drcline",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DrcRf": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-drcrf",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LfeControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-lfecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LfeFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-lfefilter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoRoCenterMixLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-lorocentermixlevel",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoRoSurroundMixLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-lorosurroundmixlevel",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LtRtCenterMixLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-ltrtcentermixlevel",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LtRtSurroundMixLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-ltrtsurroundmixlevel",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetadataControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-metadatacontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PassthroughControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-passthroughcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PhaseControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-phasecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StereoDownmix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-stereodownmix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SurroundExMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-surroundexmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SurroundMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-eac3settings.html#cfn-medialive-channel-eac3settings-surroundmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.EbuTtDDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ebuttddestinationsettings.html",
      "Properties": {
        "FillLineGap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ebuttddestinationsettings.html#cfn-medialive-channel-ebuttddestinationsettings-filllinegap",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FontFamily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ebuttddestinationsettings.html#cfn-medialive-channel-ebuttddestinationsettings-fontfamily",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StyleControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ebuttddestinationsettings.html#cfn-medialive-channel-ebuttddestinationsettings-stylecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.EmbeddedDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddeddestinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.EmbeddedPlusScte20DestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedplusscte20destinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.EmbeddedSourceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html",
      "Properties": {
        "Convert608To708": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-convert608to708",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scte20Detection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-scte20detection",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Source608ChannelNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-source608channelnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Source608TrackNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-source608tracknumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.EncoderSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html",
      "Properties": {
        "AudioDescriptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-audiodescriptions",
          "ItemType": "AudioDescription",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AvailBlanking": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-availblanking",
          "Required": false,
          "Type": "AvailBlanking",
          "UpdateType": "Mutable"
        },
        "AvailConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-availconfiguration",
          "Required": false,
          "Type": "AvailConfiguration",
          "UpdateType": "Mutable"
        },
        "BlackoutSlate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-blackoutslate",
          "Required": false,
          "Type": "BlackoutSlate",
          "UpdateType": "Mutable"
        },
        "CaptionDescriptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-captiondescriptions",
          "ItemType": "CaptionDescription",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "FeatureActivations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-featureactivations",
          "Required": false,
          "Type": "FeatureActivations",
          "UpdateType": "Mutable"
        },
        "GlobalConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-globalconfiguration",
          "Required": false,
          "Type": "GlobalConfiguration",
          "UpdateType": "Mutable"
        },
        "NielsenConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-nielsenconfiguration",
          "Required": false,
          "Type": "NielsenConfiguration",
          "UpdateType": "Mutable"
        },
        "OutputGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-outputgroups",
          "ItemType": "OutputGroup",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TimecodeConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-timecodeconfig",
          "Required": false,
          "Type": "TimecodeConfig",
          "UpdateType": "Mutable"
        },
        "VideoDescriptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-encodersettings.html#cfn-medialive-channel-encodersettings-videodescriptions",
          "ItemType": "VideoDescription",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.FailoverCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-failovercondition.html",
      "Properties": {
        "FailoverConditionSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-failovercondition.html#cfn-medialive-channel-failovercondition-failoverconditionsettings",
          "Required": false,
          "Type": "FailoverConditionSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.FailoverConditionSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-failoverconditionsettings.html",
      "Properties": {
        "AudioSilenceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-failoverconditionsettings.html#cfn-medialive-channel-failoverconditionsettings-audiosilencesettings",
          "Required": false,
          "Type": "AudioSilenceFailoverSettings",
          "UpdateType": "Mutable"
        },
        "InputLossSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-failoverconditionsettings.html#cfn-medialive-channel-failoverconditionsettings-inputlosssettings",
          "Required": false,
          "Type": "InputLossFailoverSettings",
          "UpdateType": "Mutable"
        },
        "VideoBlackSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-failoverconditionsettings.html#cfn-medialive-channel-failoverconditionsettings-videoblacksettings",
          "Required": false,
          "Type": "VideoBlackFailoverSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.FeatureActivations": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-featureactivations.html",
      "Properties": {
        "InputPrepareScheduleActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-featureactivations.html#cfn-medialive-channel-featureactivations-inputpreparescheduleactions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.FecOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fecoutputsettings.html",
      "Properties": {
        "ColumnDepth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fecoutputsettings.html#cfn-medialive-channel-fecoutputsettings-columndepth",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeFec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fecoutputsettings.html#cfn-medialive-channel-fecoutputsettings-includefec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RowLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fecoutputsettings.html#cfn-medialive-channel-fecoutputsettings-rowlength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Fmp4HlsSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fmp4hlssettings.html",
      "Properties": {
        "AudioRenditionSets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fmp4hlssettings.html#cfn-medialive-channel-fmp4hlssettings-audiorenditionsets",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NielsenId3Behavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fmp4hlssettings.html#cfn-medialive-channel-fmp4hlssettings-nielsenid3behavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-fmp4hlssettings.html#cfn-medialive-channel-fmp4hlssettings-timedmetadatabehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.FrameCaptureGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-framecapturegroupsettings.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-framecapturegroupsettings.html#cfn-medialive-channel-framecapturegroupsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.FrameCaptureOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-framecaptureoutputsettings.html",
      "Properties": {
        "NameModifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-framecaptureoutputsettings.html#cfn-medialive-channel-framecaptureoutputsettings-namemodifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.FrameCaptureSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-framecapturesettings.html",
      "Properties": {
        "CaptureInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-framecapturesettings.html#cfn-medialive-channel-framecapturesettings-captureinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CaptureIntervalUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-framecapturesettings.html#cfn-medialive-channel-framecapturesettings-captureintervalunits",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.GlobalConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-globalconfiguration.html",
      "Properties": {
        "InitialAudioGain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-globalconfiguration.html#cfn-medialive-channel-globalconfiguration-initialaudiogain",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputEndAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-globalconfiguration.html#cfn-medialive-channel-globalconfiguration-inputendaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputLossBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-globalconfiguration.html#cfn-medialive-channel-globalconfiguration-inputlossbehavior",
          "Required": false,
          "Type": "InputLossBehavior",
          "UpdateType": "Mutable"
        },
        "OutputLockingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-globalconfiguration.html#cfn-medialive-channel-globalconfiguration-outputlockingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputTimingSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-globalconfiguration.html#cfn-medialive-channel-globalconfiguration-outputtimingsource",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SupportLowFramerateInputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-globalconfiguration.html#cfn-medialive-channel-globalconfiguration-supportlowframerateinputs",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.H264ColorSpaceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264colorspacesettings.html",
      "Properties": {
        "ColorSpacePassthroughSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264colorspacesettings.html#cfn-medialive-channel-h264colorspacesettings-colorspacepassthroughsettings",
          "Required": false,
          "Type": "ColorSpacePassthroughSettings",
          "UpdateType": "Mutable"
        },
        "Rec601Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264colorspacesettings.html#cfn-medialive-channel-h264colorspacesettings-rec601settings",
          "Required": false,
          "Type": "Rec601Settings",
          "UpdateType": "Mutable"
        },
        "Rec709Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264colorspacesettings.html#cfn-medialive-channel-h264colorspacesettings-rec709settings",
          "Required": false,
          "Type": "Rec709Settings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.H264FilterSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264filtersettings.html",
      "Properties": {
        "TemporalFilterSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264filtersettings.html#cfn-medialive-channel-h264filtersettings-temporalfiltersettings",
          "Required": false,
          "Type": "TemporalFilterSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.H264Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html",
      "Properties": {
        "AdaptiveQuantization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-adaptivequantization",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AfdSignaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-afdsignaling",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Bitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-bitrate",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BufFillPct": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-buffillpct",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BufSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-bufsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColorMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-colormetadata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColorSpaceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-colorspacesettings",
          "Required": false,
          "Type": "H264ColorSpaceSettings",
          "UpdateType": "Mutable"
        },
        "EntropyEncoding": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-entropyencoding",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilterSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-filtersettings",
          "Required": false,
          "Type": "H264FilterSettings",
          "UpdateType": "Mutable"
        },
        "FixedAfd": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-fixedafd",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FlickerAq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-flickeraq",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ForceFieldPictures": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-forcefieldpictures",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FramerateControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-frameratecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FramerateDenominator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-frameratedenominator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FramerateNumerator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-frameratenumerator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopBReference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-gopbreference",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopClosedCadence": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-gopclosedcadence",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopNumBFrames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-gopnumbframes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-gopsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopSizeUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-gopsizeunits",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Level": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-level",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LookAheadRateControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-lookaheadratecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxBitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-maxbitrate",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinIInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-miniinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRefFrames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-numrefframes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-parcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParDenominator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-pardenominator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParNumerator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-parnumerator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Profile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-profile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "QualityLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-qualitylevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "QvbrQualityLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-qvbrqualitylevel",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RateControlMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-ratecontrolmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScanType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-scantype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SceneChangeDetect": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-scenechangedetect",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Slices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-slices",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Softness": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-softness",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpatialAq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-spatialaq",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubgopLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-subgoplength",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Syntax": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-syntax",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TemporalAq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-temporalaq",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimecodeInsertion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h264settings.html#cfn-medialive-channel-h264settings-timecodeinsertion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.H265ColorSpaceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265colorspacesettings.html",
      "Properties": {
        "ColorSpacePassthroughSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265colorspacesettings.html#cfn-medialive-channel-h265colorspacesettings-colorspacepassthroughsettings",
          "Required": false,
          "Type": "ColorSpacePassthroughSettings",
          "UpdateType": "Mutable"
        },
        "Hdr10Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265colorspacesettings.html#cfn-medialive-channel-h265colorspacesettings-hdr10settings",
          "Required": false,
          "Type": "Hdr10Settings",
          "UpdateType": "Mutable"
        },
        "Rec601Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265colorspacesettings.html#cfn-medialive-channel-h265colorspacesettings-rec601settings",
          "Required": false,
          "Type": "Rec601Settings",
          "UpdateType": "Mutable"
        },
        "Rec709Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265colorspacesettings.html#cfn-medialive-channel-h265colorspacesettings-rec709settings",
          "Required": false,
          "Type": "Rec709Settings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.H265FilterSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265filtersettings.html",
      "Properties": {
        "TemporalFilterSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265filtersettings.html#cfn-medialive-channel-h265filtersettings-temporalfiltersettings",
          "Required": false,
          "Type": "TemporalFilterSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.H265Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html",
      "Properties": {
        "AdaptiveQuantization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-adaptivequantization",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AfdSignaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-afdsignaling",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AlternativeTransferFunction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-alternativetransferfunction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Bitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-bitrate",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BufSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-bufsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColorMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-colormetadata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColorSpaceSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-colorspacesettings",
          "Required": false,
          "Type": "H265ColorSpaceSettings",
          "UpdateType": "Mutable"
        },
        "FilterSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-filtersettings",
          "Required": false,
          "Type": "H265FilterSettings",
          "UpdateType": "Mutable"
        },
        "FixedAfd": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-fixedafd",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FlickerAq": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-flickeraq",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FramerateDenominator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-frameratedenominator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FramerateNumerator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-frameratenumerator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopClosedCadence": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-gopclosedcadence",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-gopsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopSizeUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-gopsizeunits",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Level": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-level",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LookAheadRateControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-lookaheadratecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxBitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-maxbitrate",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinIInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-miniinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParDenominator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-pardenominator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParNumerator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-parnumerator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Profile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-profile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "QvbrQualityLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-qvbrqualitylevel",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RateControlMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-ratecontrolmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScanType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-scantype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SceneChangeDetect": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-scenechangedetect",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Slices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-slices",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-tier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimecodeInsertion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-h265settings.html#cfn-medialive-channel-h265settings-timecodeinsertion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Hdr10Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hdr10settings.html",
      "Properties": {
        "MaxCll": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hdr10settings.html#cfn-medialive-channel-hdr10settings-maxcll",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxFall": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hdr10settings.html#cfn-medialive-channel-hdr10settings-maxfall",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsAkamaiSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html",
      "Properties": {
        "ConnectionRetryInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html#cfn-medialive-channel-hlsakamaisettings-connectionretryinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilecacheDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html#cfn-medialive-channel-hlsakamaisettings-filecacheduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpTransferMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html#cfn-medialive-channel-hlsakamaisettings-httptransfermode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html#cfn-medialive-channel-hlsakamaisettings-numretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestartDelay": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html#cfn-medialive-channel-hlsakamaisettings-restartdelay",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Salt": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html#cfn-medialive-channel-hlsakamaisettings-salt",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Token": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsakamaisettings.html#cfn-medialive-channel-hlsakamaisettings-token",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsBasicPutSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsbasicputsettings.html",
      "Properties": {
        "ConnectionRetryInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsbasicputsettings.html#cfn-medialive-channel-hlsbasicputsettings-connectionretryinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilecacheDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsbasicputsettings.html#cfn-medialive-channel-hlsbasicputsettings-filecacheduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsbasicputsettings.html#cfn-medialive-channel-hlsbasicputsettings-numretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestartDelay": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsbasicputsettings.html#cfn-medialive-channel-hlsbasicputsettings-restartdelay",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsCdnSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlscdnsettings.html",
      "Properties": {
        "HlsAkamaiSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlscdnsettings.html#cfn-medialive-channel-hlscdnsettings-hlsakamaisettings",
          "Required": false,
          "Type": "HlsAkamaiSettings",
          "UpdateType": "Mutable"
        },
        "HlsBasicPutSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlscdnsettings.html#cfn-medialive-channel-hlscdnsettings-hlsbasicputsettings",
          "Required": false,
          "Type": "HlsBasicPutSettings",
          "UpdateType": "Mutable"
        },
        "HlsMediaStoreSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlscdnsettings.html#cfn-medialive-channel-hlscdnsettings-hlsmediastoresettings",
          "Required": false,
          "Type": "HlsMediaStoreSettings",
          "UpdateType": "Mutable"
        },
        "HlsWebdavSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlscdnsettings.html#cfn-medialive-channel-hlscdnsettings-hlswebdavsettings",
          "Required": false,
          "Type": "HlsWebdavSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html",
      "Properties": {
        "AdMarkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-admarkers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "BaseUrlContent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-baseurlcontent",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BaseUrlContent1": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-baseurlcontent1",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BaseUrlManifest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-baseurlmanifest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BaseUrlManifest1": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-baseurlmanifest1",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CaptionLanguageMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-captionlanguagemappings",
          "ItemType": "CaptionLanguageMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CaptionLanguageSetting": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-captionlanguagesetting",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ClientCache": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-clientcache",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CodecSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-codecspecification",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConstantIv": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-constantiv",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        },
        "DirectoryStructure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-directorystructure",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DiscontinuityTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-discontinuitytags",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncryptionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-encryptiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HlsCdnSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-hlscdnsettings",
          "Required": false,
          "Type": "HlsCdnSettings",
          "UpdateType": "Mutable"
        },
        "HlsId3SegmentTagging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-hlsid3segmenttagging",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IFrameOnlyPlaylists": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-iframeonlyplaylists",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncompleteSegmentBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-incompletesegmentbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IndexNSegments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-indexnsegments",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputLossAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-inputlossaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IvInManifest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-ivinmanifest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IvSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-ivsource",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeepSegments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-keepsegments",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-keyformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyFormatVersions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-keyformatversions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyProviderSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-keyprovidersettings",
          "Required": false,
          "Type": "KeyProviderSettings",
          "UpdateType": "Mutable"
        },
        "ManifestCompression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-manifestcompression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ManifestDurationFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-manifestdurationformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinSegmentLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-minsegmentlength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-mode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-outputselection",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramDateTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-programdatetime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramDateTimePeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-programdatetimeperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RedundantManifest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-redundantmanifest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-segmentlength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentationMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-segmentationmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentsPerSubdirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-segmentspersubdirectory",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamInfResolution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-streaminfresolution",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataId3Frame": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-timedmetadataid3frame",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataId3Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-timedmetadataid3period",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimestampDeltaMilliseconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-timestampdeltamilliseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TsFileMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsgroupsettings.html#cfn-medialive-channel-hlsgroupsettings-tsfilemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsInputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html",
      "Properties": {
        "Bandwidth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-bandwidth",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BufferSegments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-buffersegments",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Retries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-retries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RetryInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-retryinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsMediaStoreSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsmediastoresettings.html",
      "Properties": {
        "ConnectionRetryInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsmediastoresettings.html#cfn-medialive-channel-hlsmediastoresettings-connectionretryinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilecacheDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsmediastoresettings.html#cfn-medialive-channel-hlsmediastoresettings-filecacheduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MediaStoreStorageClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsmediastoresettings.html#cfn-medialive-channel-hlsmediastoresettings-mediastorestorageclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsmediastoresettings.html#cfn-medialive-channel-hlsmediastoresettings-numretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestartDelay": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsmediastoresettings.html#cfn-medialive-channel-hlsmediastoresettings-restartdelay",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsoutputsettings.html",
      "Properties": {
        "H265PackagingType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsoutputsettings.html#cfn-medialive-channel-hlsoutputsettings-h265packagingtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HlsSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsoutputsettings.html#cfn-medialive-channel-hlsoutputsettings-hlssettings",
          "Required": false,
          "Type": "HlsSettings",
          "UpdateType": "Mutable"
        },
        "NameModifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsoutputsettings.html#cfn-medialive-channel-hlsoutputsettings-namemodifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentModifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsoutputsettings.html#cfn-medialive-channel-hlsoutputsettings-segmentmodifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlssettings.html",
      "Properties": {
        "AudioOnlyHlsSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlssettings.html#cfn-medialive-channel-hlssettings-audioonlyhlssettings",
          "Required": false,
          "Type": "AudioOnlyHlsSettings",
          "UpdateType": "Mutable"
        },
        "Fmp4HlsSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlssettings.html#cfn-medialive-channel-hlssettings-fmp4hlssettings",
          "Required": false,
          "Type": "Fmp4HlsSettings",
          "UpdateType": "Mutable"
        },
        "StandardHlsSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlssettings.html#cfn-medialive-channel-hlssettings-standardhlssettings",
          "Required": false,
          "Type": "StandardHlsSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.HlsWebdavSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlswebdavsettings.html",
      "Properties": {
        "ConnectionRetryInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlswebdavsettings.html#cfn-medialive-channel-hlswebdavsettings-connectionretryinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilecacheDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlswebdavsettings.html#cfn-medialive-channel-hlswebdavsettings-filecacheduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpTransferMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlswebdavsettings.html#cfn-medialive-channel-hlswebdavsettings-httptransfermode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlswebdavsettings.html#cfn-medialive-channel-hlswebdavsettings-numretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestartDelay": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlswebdavsettings.html#cfn-medialive-channel-hlswebdavsettings-restartdelay",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.InputAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html",
      "Properties": {
        "AutomaticInputFailoverSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-automaticinputfailoversettings",
          "Required": false,
          "Type": "AutomaticInputFailoverSettings",
          "UpdateType": "Mutable"
        },
        "InputAttachmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputattachmentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputsettings",
          "Required": false,
          "Type": "InputSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.InputChannelLevel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputchannellevel.html",
      "Properties": {
        "Gain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputchannellevel.html#cfn-medialive-channel-inputchannellevel-gain",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputChannel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputchannellevel.html#cfn-medialive-channel-inputchannellevel-inputchannel",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.InputLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlocation.html",
      "Properties": {
        "PasswordParam": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlocation.html#cfn-medialive-channel-inputlocation-passwordparam",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlocation.html#cfn-medialive-channel-inputlocation-uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlocation.html#cfn-medialive-channel-inputlocation-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.InputLossBehavior": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossbehavior.html",
      "Properties": {
        "BlackFrameMsec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossbehavior.html#cfn-medialive-channel-inputlossbehavior-blackframemsec",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputLossImageColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossbehavior.html#cfn-medialive-channel-inputlossbehavior-inputlossimagecolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputLossImageSlate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossbehavior.html#cfn-medialive-channel-inputlossbehavior-inputlossimageslate",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "InputLossImageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossbehavior.html#cfn-medialive-channel-inputlossbehavior-inputlossimagetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepeatFrameMsec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossbehavior.html#cfn-medialive-channel-inputlossbehavior-repeatframemsec",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.InputLossFailoverSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossfailoversettings.html",
      "Properties": {
        "InputLossThresholdMsec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputlossfailoversettings.html#cfn-medialive-channel-inputlossfailoversettings-inputlossthresholdmsec",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.InputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html",
      "Properties": {
        "AudioSelectors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-audioselectors",
          "ItemType": "AudioSelector",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CaptionSelectors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-captionselectors",
          "ItemType": "CaptionSelector",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DeblockFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-deblockfilter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DenoiseFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-denoisefilter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilterStrength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-filterstrength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-inputfilter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkInputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-networkinputsettings",
          "Required": false,
          "Type": "NetworkInputSettings",
          "UpdateType": "Mutable"
        },
        "Smpte2038DataPreference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-smpte2038datapreference",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceEndBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-sourceendbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VideoSelector": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-videoselector",
          "Required": false,
          "Type": "VideoSelector",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.InputSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html",
      "Properties": {
        "Codec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html#cfn-medialive-channel-inputspecification-codec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumBitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html#cfn-medialive-channel-inputspecification-maximumbitrate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Resolution": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html#cfn-medialive-channel-inputspecification-resolution",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.KeyProviderSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-keyprovidersettings.html",
      "Properties": {
        "StaticKeySettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-keyprovidersettings.html#cfn-medialive-channel-keyprovidersettings-statickeysettings",
          "Required": false,
          "Type": "StaticKeySettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.M2tsSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html",
      "Properties": {
        "AbsentInputAudioBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-absentinputaudiobehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Arib": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-arib",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AribCaptionsPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-aribcaptionspid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AribCaptionsPidControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-aribcaptionspidcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioBufferModel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-audiobuffermodel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioFramesPerPes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-audioframesperpes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioPids": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-audiopids",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioStreamType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-audiostreamtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Bitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-bitrate",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BufferModel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-buffermodel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CcDescriptor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-ccdescriptor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DvbNitSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-dvbnitsettings",
          "Required": false,
          "Type": "DvbNitSettings",
          "UpdateType": "Mutable"
        },
        "DvbSdtSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-dvbsdtsettings",
          "Required": false,
          "Type": "DvbSdtSettings",
          "UpdateType": "Mutable"
        },
        "DvbSubPids": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-dvbsubpids",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DvbTdtSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-dvbtdtsettings",
          "Required": false,
          "Type": "DvbTdtSettings",
          "UpdateType": "Mutable"
        },
        "DvbTeletextPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-dvbteletextpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ebif": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-ebif",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EbpAudioInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-ebpaudiointerval",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EbpLookaheadMs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-ebplookaheadms",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EbpPlacement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-ebpplacement",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EcmPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-ecmpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EsRateInPes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-esrateinpes",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EtvPlatformPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-etvplatformpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EtvSignalPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-etvsignalpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FragmentTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-fragmenttime",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Klv": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-klv",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KlvDataPids": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-klvdatapids",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NielsenId3Behavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-nielsenid3behavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NullPacketBitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-nullpacketbitrate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PatInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-patinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PcrControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-pcrcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PcrPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-pcrperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PcrPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-pcrpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PmtInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-pmtinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PmtPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-pmtpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramNum": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-programnum",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RateMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-ratemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scte27Pids": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-scte27pids",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scte35Control": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-scte35control",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scte35Pid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-scte35pid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentationMarkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-segmentationmarkers",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentationStyle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-segmentationstyle",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentationTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-segmentationtime",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-timedmetadatabehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-timedmetadatapid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TransportStreamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-transportstreamid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VideoPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m2tssettings.html#cfn-medialive-channel-m2tssettings-videopid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.M3u8Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html",
      "Properties": {
        "AudioFramesPerPes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-audioframesperpes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioPids": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-audiopids",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EcmPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-ecmpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NielsenId3Behavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-nielsenid3behavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PatInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-patinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PcrControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-pcrcontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PcrPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-pcrperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PcrPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-pcrpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PmtInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-pmtinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PmtPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-pmtpid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramNum": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-programnum",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scte35Behavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-scte35behavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Scte35Pid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-scte35pid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-timedmetadatabehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-timedmetadatapid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TransportStreamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-transportstreamid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VideoPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-m3u8settings.html#cfn-medialive-channel-m3u8settings-videopid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.MediaPackageGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackagegroupsettings.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackagegroupsettings.html#cfn-medialive-channel-mediapackagegroupsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.MediaPackageOutputDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html",
      "Properties": {
        "ChannelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html#cfn-medialive-channel-mediapackageoutputdestinationsettings-channelid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.MediaPackageOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.Mp2Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mp2settings.html",
      "Properties": {
        "Bitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mp2settings.html#cfn-medialive-channel-mp2settings-bitrate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CodingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mp2settings.html#cfn-medialive-channel-mp2settings-codingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SampleRate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mp2settings.html#cfn-medialive-channel-mp2settings-samplerate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Mpeg2FilterSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2filtersettings.html",
      "Properties": {
        "TemporalFilterSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2filtersettings.html#cfn-medialive-channel-mpeg2filtersettings-temporalfiltersettings",
          "Required": false,
          "Type": "TemporalFilterSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Mpeg2Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html",
      "Properties": {
        "AdaptiveQuantization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-adaptivequantization",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AfdSignaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-afdsignaling",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColorMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-colormetadata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColorSpace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-colorspace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisplayAspectRatio": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-displayaspectratio",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilterSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-filtersettings",
          "Required": false,
          "Type": "Mpeg2FilterSettings",
          "UpdateType": "Mutable"
        },
        "FixedAfd": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-fixedafd",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FramerateDenominator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-frameratedenominator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FramerateNumerator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-frameratenumerator",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopClosedCadence": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-gopclosedcadence",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopNumBFrames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-gopnumbframes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-gopsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GopSizeUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-gopsizeunits",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScanType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-scantype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubgopLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-subgoplength",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimecodeInsertion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mpeg2settings.html#cfn-medialive-channel-mpeg2settings-timecodeinsertion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.MsSmoothGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html",
      "Properties": {
        "AcquisitionPointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-acquisitionpointid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AudioOnlyTimecodeControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-audioonlytimecodecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CertificateMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-certificatemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionRetryInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-connectionretryinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        },
        "EventId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-eventid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventIdMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-eventidmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventStopBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-eventstopbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FilecacheDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-filecacheduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FragmentLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-fragmentlength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputLossAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-inputlossaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-numretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestartDelay": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-restartdelay",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentationMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-segmentationmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SendDelayMs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-senddelayms",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SparseTrackType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-sparsetracktype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamManifestBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-streammanifestbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimestampOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-timestampoffset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimestampOffsetMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothgroupsettings.html#cfn-medialive-channel-mssmoothgroupsettings-timestampoffsetmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.MsSmoothOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothoutputsettings.html",
      "Properties": {
        "H265PackagingType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothoutputsettings.html#cfn-medialive-channel-mssmoothoutputsettings-h265packagingtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NameModifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mssmoothoutputsettings.html#cfn-medialive-channel-mssmoothoutputsettings-namemodifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.MultiplexGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-multiplexgroupsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.MultiplexOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-multiplexoutputsettings.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-multiplexoutputsettings.html#cfn-medialive-channel-multiplexoutputsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.MultiplexProgramChannelDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-multiplexprogramchanneldestinationsettings.html",
      "Properties": {
        "MultiplexId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-multiplexprogramchanneldestinationsettings.html#cfn-medialive-channel-multiplexprogramchanneldestinationsettings-multiplexid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-multiplexprogramchanneldestinationsettings.html#cfn-medialive-channel-multiplexprogramchanneldestinationsettings-programname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.NetworkInputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html",
      "Properties": {
        "HlsInputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-hlsinputsettings",
          "Required": false,
          "Type": "HlsInputSettings",
          "UpdateType": "Mutable"
        },
        "ServerValidation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-servervalidation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.NielsenConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-nielsenconfiguration.html",
      "Properties": {
        "DistributorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-nielsenconfiguration.html#cfn-medialive-channel-nielsenconfiguration-distributorid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NielsenPcmToId3Tagging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-nielsenconfiguration.html#cfn-medialive-channel-nielsenconfiguration-nielsenpcmtoid3tagging",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-output.html",
      "Properties": {
        "AudioDescriptionNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-output.html#cfn-medialive-channel-output-audiodescriptionnames",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CaptionDescriptionNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-output.html#cfn-medialive-channel-output-captiondescriptionnames",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OutputName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-output.html#cfn-medialive-channel-output-outputname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-output.html#cfn-medialive-channel-output-outputsettings",
          "Required": false,
          "Type": "OutputSettings",
          "UpdateType": "Mutable"
        },
        "VideoDescriptionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-output.html#cfn-medialive-channel-output-videodescriptionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.OutputDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MediaPackageSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-mediapackagesettings",
          "ItemType": "MediaPackageOutputDestinationSettings",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MultiplexSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-multiplexsettings",
          "Required": false,
          "Type": "MultiplexProgramChannelDestinationSettings",
          "UpdateType": "Mutable"
        },
        "Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-settings",
          "ItemType": "OutputDestinationSettings",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.OutputDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html",
      "Properties": {
        "PasswordParam": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-passwordparam",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-streamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.OutputGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroup.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroup.html#cfn-medialive-channel-outputgroup-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroup.html#cfn-medialive-channel-outputgroup-outputgroupsettings",
          "Required": false,
          "Type": "OutputGroupSettings",
          "UpdateType": "Mutable"
        },
        "Outputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroup.html#cfn-medialive-channel-outputgroup-outputs",
          "ItemType": "Output",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.OutputGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html",
      "Properties": {
        "ArchiveGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-archivegroupsettings",
          "Required": false,
          "Type": "ArchiveGroupSettings",
          "UpdateType": "Mutable"
        },
        "FrameCaptureGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-framecapturegroupsettings",
          "Required": false,
          "Type": "FrameCaptureGroupSettings",
          "UpdateType": "Mutable"
        },
        "HlsGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-hlsgroupsettings",
          "Required": false,
          "Type": "HlsGroupSettings",
          "UpdateType": "Mutable"
        },
        "MediaPackageGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-mediapackagegroupsettings",
          "Required": false,
          "Type": "MediaPackageGroupSettings",
          "UpdateType": "Mutable"
        },
        "MsSmoothGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-mssmoothgroupsettings",
          "Required": false,
          "Type": "MsSmoothGroupSettings",
          "UpdateType": "Mutable"
        },
        "MultiplexGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-multiplexgroupsettings",
          "Required": false,
          "Type": "MultiplexGroupSettings",
          "UpdateType": "Mutable"
        },
        "RtmpGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-rtmpgroupsettings",
          "Required": false,
          "Type": "RtmpGroupSettings",
          "UpdateType": "Mutable"
        },
        "UdpGroupSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputgroupsettings.html#cfn-medialive-channel-outputgroupsettings-udpgroupsettings",
          "Required": false,
          "Type": "UdpGroupSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.OutputLocationRef": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputlocationref.html",
      "Properties": {
        "DestinationRefId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputlocationref.html#cfn-medialive-channel-outputlocationref-destinationrefid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.OutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html",
      "Properties": {
        "ArchiveOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-archiveoutputsettings",
          "Required": false,
          "Type": "ArchiveOutputSettings",
          "UpdateType": "Mutable"
        },
        "FrameCaptureOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-framecaptureoutputsettings",
          "Required": false,
          "Type": "FrameCaptureOutputSettings",
          "UpdateType": "Mutable"
        },
        "HlsOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-hlsoutputsettings",
          "Required": false,
          "Type": "HlsOutputSettings",
          "UpdateType": "Mutable"
        },
        "MediaPackageOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-mediapackageoutputsettings",
          "Required": false,
          "Type": "MediaPackageOutputSettings",
          "UpdateType": "Mutable"
        },
        "MsSmoothOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-mssmoothoutputsettings",
          "Required": false,
          "Type": "MsSmoothOutputSettings",
          "UpdateType": "Mutable"
        },
        "MultiplexOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-multiplexoutputsettings",
          "Required": false,
          "Type": "MultiplexOutputSettings",
          "UpdateType": "Mutable"
        },
        "RtmpOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-rtmpoutputsettings",
          "Required": false,
          "Type": "RtmpOutputSettings",
          "UpdateType": "Mutable"
        },
        "UdpOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputsettings.html#cfn-medialive-channel-outputsettings-udpoutputsettings",
          "Required": false,
          "Type": "UdpOutputSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.PassThroughSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-passthroughsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.RawSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rawsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.Rec601Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rec601settings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.Rec709Settings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rec709settings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.RemixSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-remixsettings.html",
      "Properties": {
        "ChannelMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-remixsettings.html#cfn-medialive-channel-remixsettings-channelmappings",
          "ItemType": "AudioChannelMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ChannelsIn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-remixsettings.html#cfn-medialive-channel-remixsettings-channelsin",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ChannelsOut": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-remixsettings.html#cfn-medialive-channel-remixsettings-channelsout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.RtmpCaptionInfoDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpcaptioninfodestinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.RtmpGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html",
      "Properties": {
        "AdMarkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html#cfn-medialive-channel-rtmpgroupsettings-admarkers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AuthenticationScheme": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html#cfn-medialive-channel-rtmpgroupsettings-authenticationscheme",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheFullBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html#cfn-medialive-channel-rtmpgroupsettings-cachefullbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html#cfn-medialive-channel-rtmpgroupsettings-cachelength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CaptionData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html#cfn-medialive-channel-rtmpgroupsettings-captiondata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputLossAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html#cfn-medialive-channel-rtmpgroupsettings-inputlossaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestartDelay": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpgroupsettings.html#cfn-medialive-channel-rtmpgroupsettings-restartdelay",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.RtmpOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpoutputsettings.html",
      "Properties": {
        "CertificateMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpoutputsettings.html#cfn-medialive-channel-rtmpoutputsettings-certificatemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionRetryInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpoutputsettings.html#cfn-medialive-channel-rtmpoutputsettings-connectionretryinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpoutputsettings.html#cfn-medialive-channel-rtmpoutputsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        },
        "NumRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-rtmpoutputsettings.html#cfn-medialive-channel-rtmpoutputsettings-numretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Scte20PlusEmbeddedDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20plusembeddeddestinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.Scte20SourceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html",
      "Properties": {
        "Convert608To708": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-convert608to708",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Source608ChannelNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-source608channelnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Scte27DestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27destinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.Scte27SourceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html",
      "Properties": {
        "Pid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html#cfn-medialive-channel-scte27sourcesettings-pid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Scte35SpliceInsert": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35spliceinsert.html",
      "Properties": {
        "AdAvailOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35spliceinsert.html#cfn-medialive-channel-scte35spliceinsert-adavailoffset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NoRegionalBlackoutFlag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35spliceinsert.html#cfn-medialive-channel-scte35spliceinsert-noregionalblackoutflag",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WebDeliveryAllowedFlag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35spliceinsert.html#cfn-medialive-channel-scte35spliceinsert-webdeliveryallowedflag",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.Scte35TimeSignalApos": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35timesignalapos.html",
      "Properties": {
        "AdAvailOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35timesignalapos.html#cfn-medialive-channel-scte35timesignalapos-adavailoffset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NoRegionalBlackoutFlag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35timesignalapos.html#cfn-medialive-channel-scte35timesignalapos-noregionalblackoutflag",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WebDeliveryAllowedFlag": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte35timesignalapos.html#cfn-medialive-channel-scte35timesignalapos-webdeliveryallowedflag",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.SmpteTtDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-smptettdestinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.StandardHlsSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-standardhlssettings.html",
      "Properties": {
        "AudioRenditionSets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-standardhlssettings.html#cfn-medialive-channel-standardhlssettings-audiorenditionsets",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "M3u8Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-standardhlssettings.html#cfn-medialive-channel-standardhlssettings-m3u8settings",
          "Required": false,
          "Type": "M3u8Settings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.StaticKeySettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-statickeysettings.html",
      "Properties": {
        "KeyProviderServer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-statickeysettings.html#cfn-medialive-channel-statickeysettings-keyproviderserver",
          "Required": false,
          "Type": "InputLocation",
          "UpdateType": "Mutable"
        },
        "StaticKeyValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-statickeysettings.html#cfn-medialive-channel-statickeysettings-statickeyvalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.TeletextDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextdestinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Channel.TeletextSourceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html",
      "Properties": {
        "PageNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html#cfn-medialive-channel-teletextsourcesettings-pagenumber",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.TemporalFilterSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-temporalfiltersettings.html",
      "Properties": {
        "PostFilterSharpening": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-temporalfiltersettings.html#cfn-medialive-channel-temporalfiltersettings-postfiltersharpening",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Strength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-temporalfiltersettings.html#cfn-medialive-channel-temporalfiltersettings-strength",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.TimecodeConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-timecodeconfig.html",
      "Properties": {
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-timecodeconfig.html#cfn-medialive-channel-timecodeconfig-source",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SyncThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-timecodeconfig.html#cfn-medialive-channel-timecodeconfig-syncthreshold",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.TtmlDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ttmldestinationsettings.html",
      "Properties": {
        "StyleControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-ttmldestinationsettings.html#cfn-medialive-channel-ttmldestinationsettings-stylecontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.UdpContainerSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpcontainersettings.html",
      "Properties": {
        "M2tsSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpcontainersettings.html#cfn-medialive-channel-udpcontainersettings-m2tssettings",
          "Required": false,
          "Type": "M2tsSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.UdpGroupSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpgroupsettings.html",
      "Properties": {
        "InputLossAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpgroupsettings.html#cfn-medialive-channel-udpgroupsettings-inputlossaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataId3Frame": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpgroupsettings.html#cfn-medialive-channel-udpgroupsettings-timedmetadataid3frame",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimedMetadataId3Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpgroupsettings.html#cfn-medialive-channel-udpgroupsettings-timedmetadataid3period",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.UdpOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpoutputsettings.html",
      "Properties": {
        "BufferMsec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpoutputsettings.html#cfn-medialive-channel-udpoutputsettings-buffermsec",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ContainerSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpoutputsettings.html#cfn-medialive-channel-udpoutputsettings-containersettings",
          "Required": false,
          "Type": "UdpContainerSettings",
          "UpdateType": "Mutable"
        },
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpoutputsettings.html#cfn-medialive-channel-udpoutputsettings-destination",
          "Required": false,
          "Type": "OutputLocationRef",
          "UpdateType": "Mutable"
        },
        "FecOutputSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-udpoutputsettings.html#cfn-medialive-channel-udpoutputsettings-fecoutputsettings",
          "Required": false,
          "Type": "FecOutputSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VideoBlackFailoverSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoblackfailoversettings.html",
      "Properties": {
        "BlackDetectThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoblackfailoversettings.html#cfn-medialive-channel-videoblackfailoversettings-blackdetectthreshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VideoBlackThresholdMsec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoblackfailoversettings.html#cfn-medialive-channel-videoblackfailoversettings-videoblackthresholdmsec",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VideoCodecSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videocodecsettings.html",
      "Properties": {
        "FrameCaptureSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videocodecsettings.html#cfn-medialive-channel-videocodecsettings-framecapturesettings",
          "Required": false,
          "Type": "FrameCaptureSettings",
          "UpdateType": "Mutable"
        },
        "H264Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videocodecsettings.html#cfn-medialive-channel-videocodecsettings-h264settings",
          "Required": false,
          "Type": "H264Settings",
          "UpdateType": "Mutable"
        },
        "H265Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videocodecsettings.html#cfn-medialive-channel-videocodecsettings-h265settings",
          "Required": false,
          "Type": "H265Settings",
          "UpdateType": "Mutable"
        },
        "Mpeg2Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videocodecsettings.html#cfn-medialive-channel-videocodecsettings-mpeg2settings",
          "Required": false,
          "Type": "Mpeg2Settings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VideoDescription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html",
      "Properties": {
        "CodecSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html#cfn-medialive-channel-videodescription-codecsettings",
          "Required": false,
          "Type": "VideoCodecSettings",
          "UpdateType": "Mutable"
        },
        "Height": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html#cfn-medialive-channel-videodescription-height",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html#cfn-medialive-channel-videodescription-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RespondToAfd": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html#cfn-medialive-channel-videodescription-respondtoafd",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScalingBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html#cfn-medialive-channel-videodescription-scalingbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Sharpness": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html#cfn-medialive-channel-videodescription-sharpness",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Width": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videodescription.html#cfn-medialive-channel-videodescription-width",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VideoSelector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html",
      "Properties": {
        "ColorSpace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ColorSpaceUsage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspaceusage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SelectorSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-selectorsettings",
          "Required": false,
          "Type": "VideoSelectorSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VideoSelectorPid": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html",
      "Properties": {
        "Pid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html#cfn-medialive-channel-videoselectorpid-pid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VideoSelectorProgramId": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html",
      "Properties": {
        "ProgramId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html#cfn-medialive-channel-videoselectorprogramid-programid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VideoSelectorSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html",
      "Properties": {
        "VideoSelectorPid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorpid",
          "Required": false,
          "Type": "VideoSelectorPid",
          "UpdateType": "Mutable"
        },
        "VideoSelectorProgramId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorprogramid",
          "Required": false,
          "Type": "VideoSelectorProgramId",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.VpcOutputSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-vpcoutputsettings.html",
      "Properties": {
        "PublicAddressAllocationIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-vpcoutputsettings.html#cfn-medialive-channel-vpcoutputsettings-publicaddressallocationids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-vpcoutputsettings.html#cfn-medialive-channel-vpcoutputsettings-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-vpcoutputsettings.html#cfn-medialive-channel-vpcoutputsettings-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.WavSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-wavsettings.html",
      "Properties": {
        "BitDepth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-wavsettings.html#cfn-medialive-channel-wavsettings-bitdepth",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CodingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-wavsettings.html#cfn-medialive-channel-wavsettings-codingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SampleRate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-wavsettings.html#cfn-medialive-channel-wavsettings-samplerate",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel.WebvttDestinationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-webvttdestinationsettings.html",
      "Properties": {}
    },
    "AWS::MediaLive::Input.InputDestinationRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html",
      "Properties": {
        "StreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html#cfn-medialive-input-inputdestinationrequest-streamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Input.InputDeviceRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdevicerequest.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdevicerequest.html#cfn-medialive-input-inputdevicerequest-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Input.InputDeviceSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdevicesettings.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdevicesettings.html#cfn-medialive-input-inputdevicesettings-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Input.InputSourceRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html",
      "Properties": {
        "PasswordParam": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html#cfn-medialive-input-inputsourcerequest-passwordparam",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html#cfn-medialive-input-inputsourcerequest-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html#cfn-medialive-input-inputsourcerequest-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Input.InputVpcRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Input.MediaConnectFlowRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html",
      "Properties": {
        "FlowArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html#cfn-medialive-input-mediaconnectflowrequest-flowarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::InputSecurityGroup.InputWhitelistRuleCidr": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html",
      "Properties": {
        "Cidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html#cfn-medialive-inputsecuritygroup-inputwhitelistrulecidr-cidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        }
      }
    },
    "AWS::MediaPackage::Asset.EgressEndpoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-asset-egressendpoint.html",
      "Properties": {
        "PackagingConfigurationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-asset-egressendpoint.html#cfn-mediapackage-asset-egressendpoint-packagingconfigurationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-asset-egressendpoint.html#cfn-mediapackage-asset-egressendpoint-url",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.Authorization": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-authorization.html",
      "Properties": {
        "CdnIdentifierSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-authorization.html#cfn-mediapackage-originendpoint-authorization-cdnidentifiersecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecretsRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-authorization.html#cfn-mediapackage-originendpoint-authorization-secretsrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.CmafEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html",
      "Properties": {
        "KeyRotationIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html#cfn-mediapackage-originendpoint-cmafencryption-keyrotationintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html#cfn-mediapackage-originendpoint-cmafencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.CmafPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html",
      "Properties": {
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-encryption",
          "Required": false,
          "Type": "CmafEncryption",
          "UpdateType": "Mutable"
        },
        "HlsManifests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-hlsmanifests",
          "ItemType": "HlsManifest",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-segmentprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-streamselection",
          "Required": false,
          "Type": "StreamSelection",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.DashEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashencryption.html",
      "Properties": {
        "KeyRotationIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashencryption.html#cfn-mediapackage-originendpoint-dashencryption-keyrotationintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashencryption.html#cfn-mediapackage-originendpoint-dashencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.DashPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html",
      "Properties": {
        "AdTriggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-adtriggers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.DashPackage.AdTriggers"
          }
        },
        "AdsOnDeliveryRestrictions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-adsondeliveryrestrictions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.DashPackage.AdsOnDeliveryRestrictions"
          }
        },
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-encryption",
          "Required": false,
          "Type": "DashEncryption",
          "UpdateType": "Mutable"
        },
        "ManifestLayout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-manifestlayout",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.DashPackage.ManifestLayout"
          }
        },
        "ManifestWindowSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-manifestwindowseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinBufferTimeSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-minbuffertimeseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinUpdatePeriodSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-minupdateperiodseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PeriodTriggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-periodtriggers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.DashPackage.PeriodTriggers"
          }
        },
        "Profile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-profile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.DashPackage.Profile"
          }
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentTemplateFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-segmenttemplateformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.DashPackage.SegmentTemplateFormat"
          }
        },
        "StreamSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-streamselection",
          "Required": false,
          "Type": "StreamSelection",
          "UpdateType": "Mutable"
        },
        "SuggestedPresentationDelaySeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-suggestedpresentationdelayseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.HlsEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html",
      "Properties": {
        "ConstantInitializationVector": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-constantinitializationvector",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncryptionMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-encryptionmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsEncryption.EncryptionMethod"
          }
        },
        "KeyRotationIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-keyrotationintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepeatExtXKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-repeatextxkey",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.HlsManifest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html",
      "Properties": {
        "AdMarkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-admarkers",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsManifest.AdMarkers"
          }
        },
        "AdTriggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-adtriggers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsManifest.AdTriggers"
          }
        },
        "AdsOnDeliveryRestrictions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-adsondeliveryrestrictions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsManifest.AdsOnDeliveryRestrictions"
          }
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IncludeIframeOnlyStream": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-includeiframeonlystream",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ManifestName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-manifestname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PlaylistType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-playlisttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsManifest.PlaylistType"
          }
        },
        "PlaylistWindowSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-playlistwindowseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramDateTimeIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-programdatetimeintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html#cfn-mediapackage-originendpoint-hlsmanifest-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.HlsPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html",
      "Properties": {
        "AdMarkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-admarkers",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsPackage.AdMarkers"
          }
        },
        "AdTriggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-adtriggers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsPackage.AdTriggers"
          }
        },
        "AdsOnDeliveryRestrictions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-adsondeliveryrestrictions",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsPackage.AdsOnDeliveryRestrictions"
          }
        },
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-encryption",
          "Required": false,
          "Type": "HlsEncryption",
          "UpdateType": "Mutable"
        },
        "IncludeIframeOnlyStream": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-includeiframeonlystream",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PlaylistType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-playlisttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.HlsPackage.PlaylistType"
          }
        },
        "PlaylistWindowSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-playlistwindowseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramDateTimeIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-programdatetimeintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-streamselection",
          "Required": false,
          "Type": "StreamSelection",
          "UpdateType": "Mutable"
        },
        "UseAudioRenditionGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlspackage.html#cfn-mediapackage-originendpoint-hlspackage-useaudiorenditiongroup",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.MssEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-mssencryption.html",
      "Properties": {
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-mssencryption.html#cfn-mediapackage-originendpoint-mssencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.MssPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-msspackage.html",
      "Properties": {
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-msspackage.html#cfn-mediapackage-originendpoint-msspackage-encryption",
          "Required": false,
          "Type": "MssEncryption",
          "UpdateType": "Mutable"
        },
        "ManifestWindowSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-msspackage.html#cfn-mediapackage-originendpoint-msspackage-manifestwindowseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-msspackage.html#cfn-mediapackage-originendpoint-msspackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-msspackage.html#cfn-mediapackage-originendpoint-msspackage-streamselection",
          "Required": false,
          "Type": "StreamSelection",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.SpekeKeyProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-spekekeyprovider.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-spekekeyprovider.html#cfn-mediapackage-originendpoint-spekekeyprovider-certificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-spekekeyprovider.html#cfn-mediapackage-originendpoint-spekekeyprovider-resourceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-spekekeyprovider.html#cfn-mediapackage-originendpoint-spekekeyprovider-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SystemIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-spekekeyprovider.html#cfn-mediapackage-originendpoint-spekekeyprovider-systemids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-spekekeyprovider.html#cfn-mediapackage-originendpoint-spekekeyprovider-url",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint.StreamSelection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-streamselection.html",
      "Properties": {
        "MaxVideoBitsPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-streamselection.html#cfn-mediapackage-originendpoint-streamselection-maxvideobitspersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinVideoBitsPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-streamselection.html#cfn-mediapackage-originendpoint-streamselection-minvideobitspersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamOrder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-streamselection.html#cfn-mediapackage-originendpoint-streamselection-streamorder",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.StreamSelection.StreamOrder"
          }
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.CmafEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-cmafencryption.html",
      "Properties": {
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-cmafencryption.html#cfn-mediapackage-packagingconfiguration-cmafencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.CmafPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-cmafpackage.html",
      "Properties": {
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-cmafpackage.html#cfn-mediapackage-packagingconfiguration-cmafpackage-encryption",
          "Required": false,
          "Type": "CmafEncryption",
          "UpdateType": "Mutable"
        },
        "HlsManifests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-cmafpackage.html#cfn-mediapackage-packagingconfiguration-cmafpackage-hlsmanifests",
          "ItemType": "HlsManifest",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-cmafpackage.html#cfn-mediapackage-packagingconfiguration-cmafpackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.DashEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashencryption.html",
      "Properties": {
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashencryption.html#cfn-mediapackage-packagingconfiguration-dashencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.DashManifest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashmanifest.html",
      "Properties": {
        "ManifestLayout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashmanifest.html#cfn-mediapackage-packagingconfiguration-dashmanifest-manifestlayout",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::PackagingConfiguration.DashManifest.ManifestLayout"
          }
        },
        "ManifestName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashmanifest.html#cfn-mediapackage-packagingconfiguration-dashmanifest-manifestname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinBufferTimeSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashmanifest.html#cfn-mediapackage-packagingconfiguration-dashmanifest-minbuffertimeseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Profile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashmanifest.html#cfn-mediapackage-packagingconfiguration-dashmanifest-profile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::PackagingConfiguration.DashManifest.Profile"
          }
        },
        "StreamSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashmanifest.html#cfn-mediapackage-packagingconfiguration-dashmanifest-streamselection",
          "Required": false,
          "Type": "StreamSelection",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.DashPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashpackage.html",
      "Properties": {
        "DashManifests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashpackage.html#cfn-mediapackage-packagingconfiguration-dashpackage-dashmanifests",
          "ItemType": "DashManifest",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashpackage.html#cfn-mediapackage-packagingconfiguration-dashpackage-encryption",
          "Required": false,
          "Type": "DashEncryption",
          "UpdateType": "Mutable"
        },
        "PeriodTriggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashpackage.html#cfn-mediapackage-packagingconfiguration-dashpackage-periodtriggers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashpackage.html#cfn-mediapackage-packagingconfiguration-dashpackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SegmentTemplateFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-dashpackage.html#cfn-mediapackage-packagingconfiguration-dashpackage-segmenttemplateformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::PackagingConfiguration.DashPackage.SegmentTemplateFormat"
          }
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.HlsEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsencryption.html",
      "Properties": {
        "ConstantInitializationVector": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsencryption.html#cfn-mediapackage-packagingconfiguration-hlsencryption-constantinitializationvector",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncryptionMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsencryption.html#cfn-mediapackage-packagingconfiguration-hlsencryption-encryptionmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::PackagingConfiguration.HlsEncryption.EncryptionMethod"
          }
        },
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsencryption.html#cfn-mediapackage-packagingconfiguration-hlsencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.HlsManifest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsmanifest.html",
      "Properties": {
        "AdMarkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsmanifest.html#cfn-mediapackage-packagingconfiguration-hlsmanifest-admarkers",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::PackagingConfiguration.HlsManifest.AdMarkers"
          }
        },
        "IncludeIframeOnlyStream": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsmanifest.html#cfn-mediapackage-packagingconfiguration-hlsmanifest-includeiframeonlystream",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ManifestName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsmanifest.html#cfn-mediapackage-packagingconfiguration-hlsmanifest-manifestname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProgramDateTimeIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsmanifest.html#cfn-mediapackage-packagingconfiguration-hlsmanifest-programdatetimeintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepeatExtXKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsmanifest.html#cfn-mediapackage-packagingconfiguration-hlsmanifest-repeatextxkey",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlsmanifest.html#cfn-mediapackage-packagingconfiguration-hlsmanifest-streamselection",
          "Required": false,
          "Type": "StreamSelection",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.HlsPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlspackage.html",
      "Properties": {
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlspackage.html#cfn-mediapackage-packagingconfiguration-hlspackage-encryption",
          "Required": false,
          "Type": "HlsEncryption",
          "UpdateType": "Mutable"
        },
        "HlsManifests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlspackage.html#cfn-mediapackage-packagingconfiguration-hlspackage-hlsmanifests",
          "ItemType": "HlsManifest",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlspackage.html#cfn-mediapackage-packagingconfiguration-hlspackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UseAudioRenditionGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-hlspackage.html#cfn-mediapackage-packagingconfiguration-hlspackage-useaudiorenditiongroup",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.MssEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-mssencryption.html",
      "Properties": {
        "SpekeKeyProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-mssencryption.html#cfn-mediapackage-packagingconfiguration-mssencryption-spekekeyprovider",
          "Required": true,
          "Type": "SpekeKeyProvider",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.MssManifest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-mssmanifest.html",
      "Properties": {
        "ManifestName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-mssmanifest.html#cfn-mediapackage-packagingconfiguration-mssmanifest-manifestname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-mssmanifest.html#cfn-mediapackage-packagingconfiguration-mssmanifest-streamselection",
          "Required": false,
          "Type": "StreamSelection",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.MssPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-msspackage.html",
      "Properties": {
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-msspackage.html#cfn-mediapackage-packagingconfiguration-msspackage-encryption",
          "Required": false,
          "Type": "MssEncryption",
          "UpdateType": "Mutable"
        },
        "MssManifests": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-msspackage.html#cfn-mediapackage-packagingconfiguration-msspackage-mssmanifests",
          "ItemType": "MssManifest",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SegmentDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-msspackage.html#cfn-mediapackage-packagingconfiguration-msspackage-segmentdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.SpekeKeyProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.html",
      "Properties": {
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.html#cfn-mediapackage-packagingconfiguration-spekekeyprovider-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SystemIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.html#cfn-mediapackage-packagingconfiguration-spekekeyprovider-systemids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.html#cfn-mediapackage-packagingconfiguration-spekekeyprovider-url",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration.StreamSelection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-streamselection.html",
      "Properties": {
        "MaxVideoBitsPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-streamselection.html#cfn-mediapackage-packagingconfiguration-streamselection-maxvideobitspersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinVideoBitsPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-streamselection.html#cfn-mediapackage-packagingconfiguration-streamselection-minvideobitspersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamOrder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-streamselection.html#cfn-mediapackage-packagingconfiguration-streamselection-streamorder",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::PackagingConfiguration.StreamSelection.StreamOrder"
          }
        }
      }
    },
    "AWS::MediaPackage::PackagingGroup.Authorization": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packaginggroup-authorization.html",
      "Properties": {
        "CdnIdentifierSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packaginggroup-authorization.html#cfn-mediapackage-packaginggroup-authorization-cdnidentifiersecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecretsRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packaginggroup-authorization.html#cfn-mediapackage-packaginggroup-authorization-secretsrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaStore::Container.CorsRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html",
      "Properties": {
        "AllowedHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-allowedheaders",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AllowedMethods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-allowedmethods",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "AllowedOrigins": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-allowedorigins",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ExposeHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-exposeheaders",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaxAgeSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-maxageseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaStore::Container.MetricPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-metricpolicy.html",
      "Properties": {
        "ContainerLevelMetrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-metricpolicy.html#cfn-mediastore-container-metricpolicy-containerlevelmetrics",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricPolicyRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-metricpolicy.html#cfn-mediastore-container-metricpolicy-metricpolicyrules",
          "ItemType": "MetricPolicyRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaStore::Container.MetricPolicyRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-metricpolicyrule.html",
      "Properties": {
        "ObjectGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-metricpolicyrule.html#cfn-mediastore-container-metricpolicyrule-objectgroup",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ObjectGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-metricpolicyrule.html#cfn-mediastore-container-metricpolicyrule-objectgroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Neptune::DBCluster.DBClusterRole": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-neptune-dbcluster-dbclusterrole.html",
      "Properties": {
        "FeatureName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-neptune-dbcluster-dbclusterrole.html#cfn-neptune-dbcluster-dbclusterrole-featurename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-neptune-dbcluster-dbclusterrole.html#cfn-neptune-dbcluster-dbclusterrole-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::Device.Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-device-location.html",
      "Properties": {
        "Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-device-location.html#cfn-networkmanager-device-location-address",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Latitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-device-location.html#cfn-networkmanager-device-location-latitude",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Longitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-device-location.html#cfn-networkmanager-device-location-longitude",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::Link.Bandwidth": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-link-bandwidth.html",
      "Properties": {
        "DownloadSpeed": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-link-bandwidth.html#cfn-networkmanager-link-bandwidth-downloadspeed",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UploadSpeed": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-link-bandwidth.html#cfn-networkmanager-link-bandwidth-uploadspeed",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::Site.Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-site-location.html",
      "Properties": {
        "Address": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-site-location.html#cfn-networkmanager-site-location-address",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Latitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-site-location.html#cfn-networkmanager-site-location-latitude",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Longitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-site-location.html#cfn-networkmanager-site-location-longitude",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::App.DataSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::App.EnvironmentVariable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#cfn-opsworks-app-environment-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Secure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#cfn-opsworks-app-environment-secure",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::App.Source": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html",
      "Properties": {
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-pw",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Revision": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-revision",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SshKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-sshkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::App.SslConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-certificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Chain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-chain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-privatekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Instance.BlockDeviceMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html",
      "Properties": {
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-devicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ebs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-ebs",
          "Required": false,
          "Type": "EbsBlockDevice",
          "UpdateType": "Mutable"
        },
        "NoDevice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-nodevice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VirtualName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-virtualname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Instance.EbsBlockDevice": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html",
      "Properties": {
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-deleteontermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-snapshotid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-volumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsVolumeType"
          }
        }
      }
    },
    "AWS::OpsWorks::Instance.TimeBasedAutoScaling": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html",
      "Properties": {
        "Friday": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-friday",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Monday": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-monday",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Saturday": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-saturday",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Sunday": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-sunday",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Thursday": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-thursday",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Tuesday": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-tuesday",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Wednesday": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-wednesday",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Layer.AutoScalingThresholds": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html",
      "Properties": {
        "CpuThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-cputhreshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IgnoreMetricsTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-ignoremetricstime",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-instancecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoadThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-loadthreshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MemoryThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-memorythreshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThresholdsWaitTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-thresholdwaittime",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Layer.LifecycleEventConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html",
      "Properties": {
        "ShutdownEventConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration",
          "Required": false,
          "Type": "ShutdownEventConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Layer.LoadBasedAutoScaling": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html",
      "Properties": {
        "DownScaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-downscaling",
          "Required": false,
          "Type": "AutoScalingThresholds",
          "UpdateType": "Mutable"
        },
        "Enable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-enable",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UpScaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-upscaling",
          "Required": false,
          "Type": "AutoScalingThresholds",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Layer.Recipes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html",
      "Properties": {
        "Configure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-configure",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Deploy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-deploy",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Setup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-setup",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Shutdown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-shutdown",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Undeploy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-undeploy",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Layer.ShutdownEventConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html",
      "Properties": {
        "DelayUntilElbConnectionsDrained": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-delayuntilelbconnectionsdrained",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExecutionTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-executiontimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Layer.VolumeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html",
      "Properties": {
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volumeconfiguration-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MountPoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-mountpoint",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumberOfDisks": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-numberofdisks",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RaidLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-raidlevel",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-size",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsVolumeType"
          }
        }
      }
    },
    "AWS::OpsWorks::Stack.ChefConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html",
      "Properties": {
        "BerkshelfVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ManageBerkshelf": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Stack.ElasticIp": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html",
      "Properties": {
        "Ip": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html#cfn-opsworks-stack-elasticip-ip",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html#cfn-opsworks-stack-elasticip-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Stack.RdsDbInstance": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html",
      "Properties": {
        "DbPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-dbpassword",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DbUser": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-dbuser",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RdsDbInstanceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-rdsdbinstancearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Stack.Source": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html",
      "Properties": {
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-password",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Revision": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-revision",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SshKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-sshkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Stack.StackConfigurationManager": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorksCM::Server.EngineAttribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.EngineAttribute.Name"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.EngineAttribute.Value"
          }
        }
      }
    },
    "AWS::Pinpoint::ApplicationSettings.CampaignHook": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html",
      "Properties": {
        "LambdaFunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-lambdafunctionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-mode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WebUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-weburl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::ApplicationSettings.Limits": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html",
      "Properties": {
        "Daily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-daily",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-maximumduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MessagesPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-messagespersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Total": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-total",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::ApplicationSettings.QuietTime": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html",
      "Properties": {
        "End": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-end",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Start": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-start",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.AttributeDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html",
      "Properties": {
        "AttributeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-attributetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.CampaignEmailMessage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html",
      "Properties": {
        "Body": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-body",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FromAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-fromaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HtmlBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-htmlbody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Title": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-title",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.CampaignEventFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html",
      "Properties": {
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-dimensions",
          "Required": false,
          "Type": "EventDimensions",
          "UpdateType": "Mutable"
        },
        "FilterType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-filtertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.CampaignHook": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html",
      "Properties": {
        "LambdaFunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html#cfn-pinpoint-campaign-campaignhook-lambdafunctionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html#cfn-pinpoint-campaign-campaignhook-mode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WebUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html#cfn-pinpoint-campaign-campaignhook-weburl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.CampaignSmsMessage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html",
      "Properties": {
        "Body": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-body",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EntityId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-entityid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MessageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-messagetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OriginationNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-originationnumber",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SenderId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-senderid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-templateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.EventDimensions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-attributes",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-eventtype",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        },
        "Metrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-metrics",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.Limits": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html",
      "Properties": {
        "Daily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-daily",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-maximumduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MessagesPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-messagespersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Total": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-total",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.Message": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-action",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Body": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-body",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageIconUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-imageiconurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageSmallIconUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-imagesmalliconurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-imageurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JsonBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-jsonbody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MediaUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-mediaurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RawContent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-rawcontent",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SilentPush": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-silentpush",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeToLive": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-timetolive",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Title": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-title",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.MessageConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html",
      "Properties": {
        "ADMMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-admmessage",
          "Required": false,
          "Type": "Message",
          "UpdateType": "Mutable"
        },
        "APNSMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-apnsmessage",
          "Required": false,
          "Type": "Message",
          "UpdateType": "Mutable"
        },
        "BaiduMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-baidumessage",
          "Required": false,
          "Type": "Message",
          "UpdateType": "Mutable"
        },
        "DefaultMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-defaultmessage",
          "Required": false,
          "Type": "Message",
          "UpdateType": "Mutable"
        },
        "EmailMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-emailmessage",
          "Required": false,
          "Type": "CampaignEmailMessage",
          "UpdateType": "Mutable"
        },
        "GCMMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-gcmmessage",
          "Required": false,
          "Type": "Message",
          "UpdateType": "Mutable"
        },
        "SMSMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-smsmessage",
          "Required": false,
          "Type": "CampaignSmsMessage",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.MetricDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-comparisonoperator",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-value",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.QuietTime": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html",
      "Properties": {
        "End": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-end",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Start": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-start",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.Schedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html",
      "Properties": {
        "EndTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-endtime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-eventfilter",
          "Required": false,
          "Type": "CampaignEventFilter",
          "UpdateType": "Mutable"
        },
        "Frequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-frequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IsLocalTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-islocaltime",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "QuietTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-quiettime",
          "Required": false,
          "Type": "QuietTime",
          "UpdateType": "Mutable"
        },
        "StartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-starttime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-timezone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.SetDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html",
      "Properties": {
        "DimensionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-dimensiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign.WriteTreatmentResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html",
      "Properties": {
        "MessageConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-messageconfiguration",
          "Required": false,
          "Type": "MessageConfiguration",
          "UpdateType": "Mutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-schedule",
          "Required": false,
          "Type": "Schedule",
          "UpdateType": "Mutable"
        },
        "SizePercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-sizepercent",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TreatmentDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-treatmentdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TreatmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-treatmentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.AttributeDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html",
      "Properties": {
        "AttributeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-attributetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.Behavior": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html",
      "Properties": {
        "Recency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency",
          "Required": false,
          "Type": "Recency",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.Coordinates": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates.html",
      "Properties": {
        "Latitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates-latitude",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Longitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates-longitude",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.Demographic": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html",
      "Properties": {
        "AppVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-appversion",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        },
        "Channel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-channel",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        },
        "DeviceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-devicetype",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        },
        "Make": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-make",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        },
        "Model": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-model",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        },
        "Platform": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-platform",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.GPSPoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html",
      "Properties": {
        "Coordinates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates",
          "Required": true,
          "Type": "Coordinates",
          "UpdateType": "Mutable"
        },
        "RangeInKilometers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-rangeinkilometers",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.Groups": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html",
      "Properties": {
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-dimensions",
          "ItemType": "SegmentDimensions",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceSegments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments",
          "ItemType": "SourceSegments",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-sourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html",
      "Properties": {
        "Country": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-country",
          "Required": false,
          "Type": "SetDimension",
          "UpdateType": "Mutable"
        },
        "GPSPoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint",
          "Required": false,
          "Type": "GPSPoint",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.Recency": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior-recency.html",
      "Properties": {
        "Duration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior-recency.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency-duration",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RecencyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior-recency.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency-recencytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.SegmentDimensions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-attributes",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Behavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-behavior",
          "Required": false,
          "Type": "Behavior",
          "UpdateType": "Mutable"
        },
        "Demographic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-demographic",
          "Required": false,
          "Type": "Demographic",
          "UpdateType": "Mutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-location",
          "Required": false,
          "Type": "Location",
          "UpdateType": "Mutable"
        },
        "Metrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-metrics",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-userattributes",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.SegmentGroups": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html",
      "Properties": {
        "Groups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-groups",
          "ItemType": "Groups",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Include": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-include",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.SetDimension": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html",
      "Properties": {
        "DimensionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-dimensiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment.SourceSegments": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-version",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSet.DeliveryOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html",
      "Properties": {
        "SendingPoolName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html#cfn-pinpointemail-configurationset-deliveryoptions-sendingpoolname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSet.ReputationOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html",
      "Properties": {
        "ReputationMetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html#cfn-pinpointemail-configurationset-reputationoptions-reputationmetricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSet.SendingOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html",
      "Properties": {
        "SendingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html#cfn-pinpointemail-configurationset-sendingoptions-sendingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSet.Tags": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSet.TrackingOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html",
      "Properties": {
        "CustomRedirectDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html#cfn-pinpointemail-configurationset-trackingoptions-customredirectdomain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSetEventDestination.CloudWatchDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html",
      "Properties": {
        "DimensionConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html#cfn-pinpointemail-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations",
          "ItemType": "DimensionConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSetEventDestination.DimensionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html",
      "Properties": {
        "DefaultDimensionValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DimensionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DimensionValueSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSetEventDestination.EventDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html",
      "Properties": {
        "CloudWatchDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-cloudwatchdestination",
          "Required": false,
          "Type": "CloudWatchDestination",
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KinesisFirehoseDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-kinesisfirehosedestination",
          "Required": false,
          "Type": "KinesisFirehoseDestination",
          "UpdateType": "Mutable"
        },
        "MatchingEventTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-matchingeventtypes",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PinpointDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-pinpointdestination",
          "Required": false,
          "Type": "PinpointDestination",
          "UpdateType": "Mutable"
        },
        "SnsDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-snsdestination",
          "Required": false,
          "Type": "SnsDestination",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSetEventDestination.KinesisFirehoseDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html",
      "Properties": {
        "DeliveryStreamArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IamRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-iamrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSetEventDestination.PinpointDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html",
      "Properties": {
        "ApplicationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html#cfn-pinpointemail-configurationseteventdestination-pinpointdestination-applicationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSetEventDestination.SnsDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html",
      "Properties": {
        "TopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html#cfn-pinpointemail-configurationseteventdestination-snsdestination-topicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::DedicatedIpPool.Tags": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::Identity.MailFromAttributes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html",
      "Properties": {
        "BehaviorOnMxFailure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-behavioronmxfailure",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MailFromDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-mailfromdomain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::Identity.Tags": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QLDB::Stream.KinesisConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qldb-stream-kinesisconfiguration.html",
      "Properties": {
        "AggregationEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qldb-stream-kinesisconfiguration.html#cfn-qldb-stream-kinesisconfiguration-aggregationenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StreamArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qldb-stream-kinesisconfiguration.html#cfn-qldb-stream-kinesisconfiguration-streamarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QLDB::Stream.KinesisConfiguration.StreamArn"
          }
        }
      }
    },
    "AWS::QuickSight::Analysis.AnalysisError": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysiserror.html",
      "Properties": {
        "Message": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysiserror.html#cfn-quicksight-analysis-analysiserror-message",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.AnalysisError.Message"
          }
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysiserror.html#cfn-quicksight-analysis-analysiserror-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.AnalysisError.Type"
          }
        }
      }
    },
    "AWS::QuickSight::Analysis.AnalysisSourceEntity": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysissourceentity.html",
      "Properties": {
        "SourceTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysissourceentity.html#cfn-quicksight-analysis-analysissourceentity-sourcetemplate",
          "Required": false,
          "Type": "AnalysisSourceTemplate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Analysis.AnalysisSourceTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysissourcetemplate.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysissourcetemplate.html#cfn-quicksight-analysis-analysissourcetemplate-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DataSetReferences": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-analysissourcetemplate.html#cfn-quicksight-analysis-analysissourcetemplate-datasetreferences",
          "ItemType": "DataSetReference",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Analysis.DataSetReference": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-datasetreference.html",
      "Properties": {
        "DataSetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-datasetreference.html#cfn-quicksight-analysis-datasetreference-datasetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DataSetPlaceholder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-datasetreference.html#cfn-quicksight-analysis-datasetreference-datasetplaceholder",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.DataSetReference.DataSetPlaceholder"
          }
        }
      }
    },
    "AWS::QuickSight::Analysis.DateTimeParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-datetimeparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-datetimeparameter.html#cfn-quicksight-analysis-datetimeparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.DateTimeParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-datetimeparameter.html#cfn-quicksight-analysis-datetimeparameter-values",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Analysis.DecimalParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-decimalparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-decimalparameter.html#cfn-quicksight-analysis-decimalparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.DecimalParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-decimalparameter.html#cfn-quicksight-analysis-decimalparameter-values",
          "PrimitiveItemType": "Double",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Analysis.IntegerParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-integerparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-integerparameter.html#cfn-quicksight-analysis-integerparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.IntegerParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-integerparameter.html#cfn-quicksight-analysis-integerparameter-values",
          "PrimitiveItemType": "Double",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Analysis.Parameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-parameters.html",
      "Properties": {
        "DateTimeParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-parameters.html#cfn-quicksight-analysis-parameters-datetimeparameters",
          "ItemType": "DateTimeParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DecimalParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-parameters.html#cfn-quicksight-analysis-parameters-decimalparameters",
          "ItemType": "DecimalParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "IntegerParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-parameters.html#cfn-quicksight-analysis-parameters-integerparameters",
          "ItemType": "IntegerParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StringParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-parameters.html#cfn-quicksight-analysis-parameters-stringparameters",
          "ItemType": "StringParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Analysis.ResourcePermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-resourcepermission.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-resourcepermission.html#cfn-quicksight-analysis-resourcepermission-actions",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-resourcepermission.html#cfn-quicksight-analysis-resourcepermission-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.ResourcePermission.Principal"
          }
        }
      }
    },
    "AWS::QuickSight::Analysis.Sheet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-sheet.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-sheet.html#cfn-quicksight-analysis-sheet-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.Sheet.Name"
          }
        },
        "SheetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-sheet.html#cfn-quicksight-analysis-sheet-sheetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.Sheet.SheetId"
          }
        }
      }
    },
    "AWS::QuickSight::Analysis.StringParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-stringparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-stringparameter.html#cfn-quicksight-analysis-stringparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.StringParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-stringparameter.html#cfn-quicksight-analysis-stringparameter-values",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.AdHocFilteringOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-adhocfilteringoption.html",
      "Properties": {
        "AvailabilityStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-adhocfilteringoption.html#cfn-quicksight-dashboard-adhocfilteringoption-availabilitystatus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.AdHocFilteringOption.AvailabilityStatus"
          }
        }
      }
    },
    "AWS::QuickSight::Dashboard.DashboardPublishOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardpublishoptions.html",
      "Properties": {
        "AdHocFilteringOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardpublishoptions.html#cfn-quicksight-dashboard-dashboardpublishoptions-adhocfilteringoption",
          "Required": false,
          "Type": "AdHocFilteringOption",
          "UpdateType": "Mutable"
        },
        "ExportToCSVOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardpublishoptions.html#cfn-quicksight-dashboard-dashboardpublishoptions-exporttocsvoption",
          "Required": false,
          "Type": "ExportToCSVOption",
          "UpdateType": "Mutable"
        },
        "SheetControlsOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardpublishoptions.html#cfn-quicksight-dashboard-dashboardpublishoptions-sheetcontrolsoption",
          "Required": false,
          "Type": "SheetControlsOption",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.DashboardSourceEntity": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardsourceentity.html",
      "Properties": {
        "SourceTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardsourceentity.html#cfn-quicksight-dashboard-dashboardsourceentity-sourcetemplate",
          "Required": false,
          "Type": "DashboardSourceTemplate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.DashboardSourceTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardsourcetemplate.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardsourcetemplate.html#cfn-quicksight-dashboard-dashboardsourcetemplate-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DataSetReferences": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-dashboardsourcetemplate.html#cfn-quicksight-dashboard-dashboardsourcetemplate-datasetreferences",
          "ItemType": "DataSetReference",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.DataSetReference": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-datasetreference.html",
      "Properties": {
        "DataSetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-datasetreference.html#cfn-quicksight-dashboard-datasetreference-datasetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DataSetPlaceholder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-datasetreference.html#cfn-quicksight-dashboard-datasetreference-datasetplaceholder",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.DataSetReference.DataSetPlaceholder"
          }
        }
      }
    },
    "AWS::QuickSight::Dashboard.DateTimeParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-datetimeparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-datetimeparameter.html#cfn-quicksight-dashboard-datetimeparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.DateTimeParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-datetimeparameter.html#cfn-quicksight-dashboard-datetimeparameter-values",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.DecimalParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-decimalparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-decimalparameter.html#cfn-quicksight-dashboard-decimalparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.DecimalParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-decimalparameter.html#cfn-quicksight-dashboard-decimalparameter-values",
          "PrimitiveItemType": "Double",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.ExportToCSVOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-exporttocsvoption.html",
      "Properties": {
        "AvailabilityStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-exporttocsvoption.html#cfn-quicksight-dashboard-exporttocsvoption-availabilitystatus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.ExportToCSVOption.AvailabilityStatus"
          }
        }
      }
    },
    "AWS::QuickSight::Dashboard.IntegerParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-integerparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-integerparameter.html#cfn-quicksight-dashboard-integerparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.IntegerParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-integerparameter.html#cfn-quicksight-dashboard-integerparameter-values",
          "PrimitiveItemType": "Double",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.Parameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-parameters.html",
      "Properties": {
        "DateTimeParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-parameters.html#cfn-quicksight-dashboard-parameters-datetimeparameters",
          "ItemType": "DateTimeParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DecimalParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-parameters.html#cfn-quicksight-dashboard-parameters-decimalparameters",
          "ItemType": "DecimalParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "IntegerParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-parameters.html#cfn-quicksight-dashboard-parameters-integerparameters",
          "ItemType": "IntegerParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StringParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-parameters.html#cfn-quicksight-dashboard-parameters-stringparameters",
          "ItemType": "StringParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard.ResourcePermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-resourcepermission.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-resourcepermission.html#cfn-quicksight-dashboard-resourcepermission-actions",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-resourcepermission.html#cfn-quicksight-dashboard-resourcepermission-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.ResourcePermission.Principal"
          }
        }
      }
    },
    "AWS::QuickSight::Dashboard.SheetControlsOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-sheetcontrolsoption.html",
      "Properties": {
        "VisibilityState": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-sheetcontrolsoption.html#cfn-quicksight-dashboard-sheetcontrolsoption-visibilitystate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.SheetControlsOption.VisibilityState"
          }
        }
      }
    },
    "AWS::QuickSight::Dashboard.StringParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-stringparameter.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-stringparameter.html#cfn-quicksight-dashboard-stringparameter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.StringParameter.Name"
          }
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-stringparameter.html#cfn-quicksight-dashboard-stringparameter-values",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Template.DataSetReference": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-datasetreference.html",
      "Properties": {
        "DataSetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-datasetreference.html#cfn-quicksight-template-datasetreference-datasetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DataSetPlaceholder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-datasetreference.html#cfn-quicksight-template-datasetreference-datasetplaceholder",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Template.DataSetReference.DataSetPlaceholder"
          }
        }
      }
    },
    "AWS::QuickSight::Template.ResourcePermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-resourcepermission.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-resourcepermission.html#cfn-quicksight-template-resourcepermission-actions",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-resourcepermission.html#cfn-quicksight-template-resourcepermission-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Template.ResourcePermission.Principal"
          }
        }
      }
    },
    "AWS::QuickSight::Template.TemplateSourceAnalysis": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourceanalysis.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourceanalysis.html#cfn-quicksight-template-templatesourceanalysis-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DataSetReferences": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourceanalysis.html#cfn-quicksight-template-templatesourceanalysis-datasetreferences",
          "ItemType": "DataSetReference",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Template.TemplateSourceEntity": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourceentity.html",
      "Properties": {
        "SourceAnalysis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourceentity.html#cfn-quicksight-template-templatesourceentity-sourceanalysis",
          "Required": false,
          "Type": "TemplateSourceAnalysis",
          "UpdateType": "Mutable"
        },
        "SourceTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourceentity.html#cfn-quicksight-template-templatesourceentity-sourcetemplate",
          "Required": false,
          "Type": "TemplateSourceTemplate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Template.TemplateSourceTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourcetemplate.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-templatesourcetemplate.html#cfn-quicksight-template-templatesourcetemplate-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.BorderStyle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-borderstyle.html",
      "Properties": {
        "Show": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-borderstyle.html#cfn-quicksight-theme-borderstyle-show",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.DataColorPalette": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-datacolorpalette.html",
      "Properties": {
        "Colors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-datacolorpalette.html#cfn-quicksight-theme-datacolorpalette-colors",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.DataColorPalette.Colors"
          }
        },
        "EmptyFillColor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-datacolorpalette.html#cfn-quicksight-theme-datacolorpalette-emptyfillcolor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.DataColorPalette.EmptyFillColor"
          }
        },
        "MinMaxGradient": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-datacolorpalette.html#cfn-quicksight-theme-datacolorpalette-minmaxgradient",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.DataColorPalette.MinMaxGradient"
          }
        }
      }
    },
    "AWS::QuickSight::Theme.Font": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-font.html",
      "Properties": {
        "FontFamily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-font.html#cfn-quicksight-theme-font-fontfamily",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.GutterStyle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-gutterstyle.html",
      "Properties": {
        "Show": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-gutterstyle.html#cfn-quicksight-theme-gutterstyle-show",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.MarginStyle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-marginstyle.html",
      "Properties": {
        "Show": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-marginstyle.html#cfn-quicksight-theme-marginstyle-show",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.ResourcePermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-resourcepermission.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-resourcepermission.html#cfn-quicksight-theme-resourcepermission-actions",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-resourcepermission.html#cfn-quicksight-theme-resourcepermission-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.ResourcePermission.Principal"
          }
        }
      }
    },
    "AWS::QuickSight::Theme.SheetStyle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-sheetstyle.html",
      "Properties": {
        "Tile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-sheetstyle.html#cfn-quicksight-theme-sheetstyle-tile",
          "Required": false,
          "Type": "TileStyle",
          "UpdateType": "Mutable"
        },
        "TileLayout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-sheetstyle.html#cfn-quicksight-theme-sheetstyle-tilelayout",
          "Required": false,
          "Type": "TileLayoutStyle",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.ThemeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-themeconfiguration.html",
      "Properties": {
        "DataColorPalette": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-themeconfiguration.html#cfn-quicksight-theme-themeconfiguration-datacolorpalette",
          "Required": false,
          "Type": "DataColorPalette",
          "UpdateType": "Mutable"
        },
        "Sheet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-themeconfiguration.html#cfn-quicksight-theme-themeconfiguration-sheet",
          "Required": false,
          "Type": "SheetStyle",
          "UpdateType": "Mutable"
        },
        "Typography": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-themeconfiguration.html#cfn-quicksight-theme-themeconfiguration-typography",
          "Required": false,
          "Type": "Typography",
          "UpdateType": "Mutable"
        },
        "UIColorPalette": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-themeconfiguration.html#cfn-quicksight-theme-themeconfiguration-uicolorpalette",
          "Required": false,
          "Type": "UIColorPalette",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.TileLayoutStyle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-tilelayoutstyle.html",
      "Properties": {
        "Gutter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-tilelayoutstyle.html#cfn-quicksight-theme-tilelayoutstyle-gutter",
          "Required": false,
          "Type": "GutterStyle",
          "UpdateType": "Mutable"
        },
        "Margin": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-tilelayoutstyle.html#cfn-quicksight-theme-tilelayoutstyle-margin",
          "Required": false,
          "Type": "MarginStyle",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.TileStyle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-tilestyle.html",
      "Properties": {
        "Border": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-tilestyle.html#cfn-quicksight-theme-tilestyle-border",
          "Required": false,
          "Type": "BorderStyle",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.Typography": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-typography.html",
      "Properties": {
        "FontFamilies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-typography.html#cfn-quicksight-theme-typography-fontfamilies",
          "ItemType": "Font",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Theme.UIColorPalette": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html",
      "Properties": {
        "Accent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-accent",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.Accent"
          }
        },
        "AccentForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-accentforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.AccentForeground"
          }
        },
        "Danger": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-danger",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.Danger"
          }
        },
        "DangerForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-dangerforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.DangerForeground"
          }
        },
        "Dimension": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-dimension",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.Dimension"
          }
        },
        "DimensionForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-dimensionforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.DimensionForeground"
          }
        },
        "Measure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-measure",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.Measure"
          }
        },
        "MeasureForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-measureforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.MeasureForeground"
          }
        },
        "PrimaryBackground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-primarybackground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.PrimaryBackground"
          }
        },
        "PrimaryForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-primaryforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.PrimaryForeground"
          }
        },
        "SecondaryBackground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-secondarybackground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.SecondaryBackground"
          }
        },
        "SecondaryForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-secondaryforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.SecondaryForeground"
          }
        },
        "Success": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-success",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.Success"
          }
        },
        "SuccessForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-successforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.SuccessForeground"
          }
        },
        "Warning": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-warning",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.Warning"
          }
        },
        "WarningForeground": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-theme-uicolorpalette.html#cfn-quicksight-theme-uicolorpalette-warningforeground",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.UIColorPalette.WarningForeground"
          }
        }
      }
    },
    "AWS::RDS::DBCluster.DBClusterRole": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html",
      "Properties": {
        "FeatureName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html#cfn-rds-dbcluster-dbclusterrole-featurename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html#cfn-rds-dbcluster-dbclusterrole-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBCluster.ScalingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html",
      "Properties": {
        "AutoPause": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-autopause",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-maxcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-mincapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecondsUntilAutoPause": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-secondsuntilautopause",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBInstance.DBInstanceRole": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html",
      "Properties": {
        "FeatureName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html#cfn-rds-dbinstance-dbinstancerole-featurename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html#cfn-rds-dbinstance-dbinstancerole-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBInstance.ProcessorFeature": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBProxy.AuthFormat": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-authformat.html",
      "Properties": {
        "AuthScheme": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-authformat.html#cfn-rds-dbproxy-authformat-authscheme",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxy.AuthFormat.AuthScheme"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-authformat.html#cfn-rds-dbproxy-authformat-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IAMAuth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-authformat.html#cfn-rds-dbproxy-authformat-iamauth",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxy.AuthFormat.IAMAuth"
          }
        },
        "SecretArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-authformat.html#cfn-rds-dbproxy-authformat-secretarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-authformat.html#cfn-rds-dbproxy-authformat-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBProxy.TagFormat": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-tagformat.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-tagformat.html#cfn-rds-dbproxy-tagformat-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxy.TagFormat.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-tagformat.html#cfn-rds-dbproxy-tagformat-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxy.TagFormat.Value"
          }
        }
      }
    },
    "AWS::RDS::DBProxyTargetGroup.ConnectionPoolConfigurationInfoFormat": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html",
      "Properties": {
        "ConnectionBorrowTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat-connectionborrowtimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InitQuery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat-initquery",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxConnectionsPercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat-maxconnectionspercent",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxIdleConnectionsPercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat-maxidleconnectionspercent",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionPinningFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat-sessionpinningfilters",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBSecurityGroup.Ingress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html",
      "Properties": {
        "CIDRIP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-cidrip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "EC2SecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EC2SecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EC2SecurityGroupOwnerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupownerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::RDS::OptionGroup.OptionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html",
      "Properties": {
        "DBSecurityGroupMemberships": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-dbsecuritygroupmemberships",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OptionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-optionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OptionSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-optionsettings",
          "DuplicatesAllowed": false,
          "ItemType": "OptionSetting",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OptionVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfiguration-optionversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcSecurityGroupMemberships": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-vpcsecuritygroupmemberships",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::OptionGroup.OptionSetting": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html#cfn-rds-optiongroup-optionconfigurations-optionsettings-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html#cfn-rds-optiongroup-optionconfigurations-optionsettings-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Redshift::Cluster.LoggingProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-s3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Redshift::ClusterParameterGroup.Parameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html",
      "Properties": {
        "ParameterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ParameterValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametervalue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ResourceGroups::Group.Query": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-query.html",
      "Properties": {
        "ResourceTypeFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-query.html#cfn-resourcegroups-group-query-resourcetypefilters",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StackIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-query.html#cfn-resourcegroups-group-query-stackidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-query.html#cfn-resourcegroups-group-query-tagfilters",
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ResourceGroups::Group.ResourceQuery": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-resourcequery.html",
      "Properties": {
        "Query": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-resourcequery.html#cfn-resourcegroups-group-resourcequery-query",
          "Required": false,
          "Type": "Query",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-resourcequery.html#cfn-resourcegroups-group-resourcequery-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ResourceGroups::Group.ResourceQuery.Type"
          }
        }
      }
    },
    "AWS::ResourceGroups::Group.TagFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-tagfilter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-tagfilter.html#cfn-resourcegroups-group-tagfilter-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourcegroups-group-tagfilter.html#cfn-resourcegroups-group-tagfilter-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::RobotApplication.RobotSoftwareSuite": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::RobotApplication.SourceConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html",
      "Properties": {
        "Architecture": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-architecture",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::SimulationApplication.RenderingEngine": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::SimulationApplication.RobotSoftwareSuite": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::SimulationApplication.SimulationSoftwareSuite": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::SimulationApplication.SourceConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html",
      "Properties": {
        "Architecture": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-architecture",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::HealthCheck.AlarmIdentifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Route53::HealthCheck.AlarmIdentifier.Name"
          }
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-region",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::HealthCheck.HealthCheckConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html",
      "Properties": {
        "AlarmIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-alarmidentifier",
          "Required": false,
          "Type": "AlarmIdentifier",
          "UpdateType": "Mutable"
        },
        "ChildHealthChecks": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-childhealthchecks",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EnableSNI": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-enablesni",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FailureThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-failurethreshold",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Route53::HealthCheck.HealthCheckConfig.FailureThreshold"
          }
        },
        "FullyQualifiedDomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-fullyqualifieddomainname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-healththreshold",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IPAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-ipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Route53::HealthCheck.HealthCheckConfig.IPAddress"
          }
        },
        "InsufficientDataHealthStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-insufficientdatahealthstatus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Route53::HealthCheck.HealthCheckConfig.InsufficientDataHealthStatus"
          }
        },
        "Inverted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-inverted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MeasureLatency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-measurelatency",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Route53::HealthCheck.HealthCheckConfig.Port"
          }
        },
        "Regions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-regions",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RequestInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-requestinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53::HealthCheck.HealthCheckConfig.RequestInterval"
          }
        },
        "ResourcePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-resourcepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SearchString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-searchstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53::HealthCheck.HealthCheckConfig.Type"
          }
        }
      }
    },
    "AWS::Route53::HealthCheck.HealthCheckTag": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthcheck-healthchecktag-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthcheck-healthchecktag-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::HostedZone.HostedZoneConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html#cfn-route53-hostedzone-hostedzoneconfig-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::HostedZone.HostedZoneTag": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetag.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetag.html#cfn-route53-hostedzone-hostedzonetag-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetag.html#cfn-route53-hostedzone-hostedzonetag-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::HostedZone.QueryLoggingConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html",
      "Properties": {
        "CloudWatchLogsLogGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html#cfn-route53-hostedzone-queryloggingconfig-cloudwatchlogsloggrouparn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::HostedZone.VPC": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-vpc.html",
      "Properties": {
        "VPCId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-vpc.html#cfn-route53-hostedzone-vpc-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        },
        "VPCRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-vpc.html#cfn-route53-hostedzone-vpc-vpcregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::RecordSet.AliasTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html",
      "Properties": {
        "DNSName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-dnshostname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EvaluateTargetHealth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-hostedzoneid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::RecordSet.GeoLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html",
      "Properties": {
        "ContinentCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-continentcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RecordSetGeoContinentCode"
          }
        },
        "CountryCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-countrycode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubdivisionCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-subdivisioncode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::RecordSetGroup.AliasTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html",
      "Properties": {
        "DNSName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-dnshostname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EvaluateTargetHealth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-hostedzoneid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::RecordSetGroup.GeoLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html",
      "Properties": {
        "ContinentCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordsetgroup-geolocation-continentcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RecordSetGeoContinentCode"
          }
        },
        "CountryCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-countrycode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubdivisionCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-subdivisioncode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::RecordSetGroup.RecordSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html",
      "Properties": {
        "AliasTarget": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget",
          "Required": false,
          "Type": "AliasTarget",
          "UpdateType": "Mutable"
        },
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Failover": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-failover",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RecordSetFailover"
          }
        },
        "GeoLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation",
          "Required": false,
          "Type": "GeoLocation",
          "UpdateType": "Mutable"
        },
        "HealthCheckId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-healthcheckid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzoneid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostedZoneName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzonename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MultiValueAnswer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-multivalueanswer",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceRecords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-resourcerecords",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SetIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-setidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-ttl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RecordSetType"
          }
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-weight",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53Resolver::ResolverEndpoint.IpAddressRequest": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html",
      "Properties": {
        "Ip": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-ip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53Resolver::ResolverRule.TargetAddress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html",
      "Properties": {
        "Ip": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-port",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::AccessPoint.PublicAccessBlockConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html",
      "Properties": {
        "BlockPublicAcls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-blockpublicacls",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BlockPublicPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-blockpublicpolicy",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IgnorePublicAcls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-ignorepublicacls",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RestrictPublicBuckets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-restrictpublicbuckets",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::S3::AccessPoint.VpcConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-vpcconfiguration.html",
      "Properties": {
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-vpcconfiguration.html#cfn-s3-accesspoint-vpcconfiguration-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3::AccessPoint.VpcConfiguration.VpcId"
          }
        }
      }
    },
    "AWS::S3::Bucket.AbortIncompleteMultipartUpload": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html",
      "Properties": {
        "DaysAfterInitiation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html#cfn-s3-bucket-abortincompletemultipartupload-daysafterinitiation",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.AccelerateConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html",
      "Properties": {
        "AccelerationStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html#cfn-s3-bucket-accelerateconfiguration-accelerationstatus",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketAccelerationStatus"
          }
        }
      }
    },
    "AWS::S3::Bucket.AccessControlTranslation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html",
      "Properties": {
        "Owner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html#cfn-s3-bucket-accesscontroltranslation-owner",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.AnalyticsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StorageClassAnalysis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-storageclassanalysis",
          "Required": true,
          "Type": "StorageClassAnalysis",
          "UpdateType": "Mutable"
        },
        "TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-tagfilters",
          "DuplicatesAllowed": false,
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.BucketEncryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html",
      "Properties": {
        "ServerSideEncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html#cfn-s3-bucket-bucketencryption-serversideencryptionconfiguration",
          "DuplicatesAllowed": false,
          "ItemType": "ServerSideEncryptionRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.CorsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html",
      "Properties": {
        "CorsRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html#cfn-s3-bucket-cors-corsrule",
          "DuplicatesAllowed": false,
          "ItemType": "CorsRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.CorsRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html",
      "Properties": {
        "AllowedHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedheaders",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AllowedMethods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedmethods",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AllowedOrigins": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedorigins",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ExposedHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-exposedheaders",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxAge": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-maxage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.DataExport": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-destination",
          "Required": true,
          "Type": "Destination",
          "UpdateType": "Mutable"
        },
        "OutputSchemaVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-outputschemaversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.DefaultRetention": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html",
      "Properties": {
        "Days": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-days",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-mode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Years": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-years",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.DeleteMarkerReplication": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-deletemarkerreplication.html",
      "Properties": {
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-deletemarkerreplication.html#cfn-s3-bucket-deletemarkerreplication-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.Destination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html",
      "Properties": {
        "BucketAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-bucketaccountid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BucketArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-bucketarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-format",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.EncryptionConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html",
      "Properties": {
        "ReplicaKmsKeyID": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html#cfn-s3-bucket-encryptionconfiguration-replicakmskeyid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.FilterRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.IntelligentTieringConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-tagfilters",
          "DuplicatesAllowed": false,
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tierings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-tierings",
          "DuplicatesAllowed": false,
          "ItemType": "Tiering",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.InventoryConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-destination",
          "Required": true,
          "Type": "Destination",
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketInventoryId"
          }
        },
        "IncludedObjectVersions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-includedobjectversions",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketInventoryIncludedObjectVersions"
          }
        },
        "OptionalFields": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-optionalfields",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScheduleFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-schedulefrequency",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketInventoryScheduleFrequency"
          }
        }
      }
    },
    "AWS::S3::Bucket.LambdaConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html",
      "Properties": {
        "Event": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-event",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-filter",
          "Required": false,
          "Type": "NotificationFilter",
          "UpdateType": "Mutable"
        },
        "Function": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-function",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.LifecycleConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html",
      "Properties": {
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html#cfn-s3-bucket-lifecycleconfig-rules",
          "DuplicatesAllowed": false,
          "ItemType": "Rule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.LoggingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html",
      "Properties": {
        "DestinationBucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-destinationbucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogFilePrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-logfileprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.Metrics": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html",
      "Properties": {
        "EventThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html#cfn-s3-bucket-metrics-eventthreshold",
          "Required": false,
          "Type": "ReplicationTimeValue",
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html#cfn-s3-bucket-metrics-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.MetricsConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html",
      "Properties": {
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-tagfilters",
          "DuplicatesAllowed": false,
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.NoncurrentVersionTransition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html",
      "Properties": {
        "StorageClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-storageclass",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TransitionInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-transitionindays",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.NotificationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html",
      "Properties": {
        "LambdaConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig",
          "DuplicatesAllowed": false,
          "ItemType": "LambdaConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "QueueConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-queueconfig",
          "DuplicatesAllowed": false,
          "ItemType": "QueueConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TopicConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-topicconfig",
          "DuplicatesAllowed": false,
          "ItemType": "TopicConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.NotificationFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html",
      "Properties": {
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key",
          "Required": true,
          "Type": "S3KeyFilter",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ObjectLockConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html",
      "Properties": {
        "ObjectLockEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-objectlockenabled",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Rule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-rule",
          "Required": false,
          "Type": "ObjectLockRule",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ObjectLockRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html",
      "Properties": {
        "DefaultRetention": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html#cfn-s3-bucket-objectlockrule-defaultretention",
          "Required": false,
          "Type": "DefaultRetention",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.OwnershipControls": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html",
      "Properties": {
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html#cfn-s3-bucket-ownershipcontrols-rules",
          "DuplicatesAllowed": false,
          "ItemType": "OwnershipControlsRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.OwnershipControlsRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html",
      "Properties": {
        "ObjectOwnership": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html#cfn-s3-bucket-ownershipcontrolsrule-objectownership",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.PublicAccessBlockConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html",
      "Properties": {
        "BlockPublicAcls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-blockpublicacls",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BlockPublicPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-blockpublicpolicy",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IgnorePublicAcls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-ignorepublicacls",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestrictPublicBuckets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-restrictpublicbuckets",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.QueueConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html",
      "Properties": {
        "Event": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-event",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-filter",
          "Required": false,
          "Type": "NotificationFilter",
          "UpdateType": "Mutable"
        },
        "Queue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-queue",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.RedirectAllRequestsTo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html",
      "Properties": {
        "HostName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-hostname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "HttpProtocol"
          }
        }
      }
    },
    "AWS::S3::Bucket.RedirectRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html",
      "Properties": {
        "HostName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-hostname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpRedirectCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-httpredirectcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplaceKeyPrefixWith": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeyprefixwith",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplaceKeyWith": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeywith",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicaModifications": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicamodifications.html",
      "Properties": {
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicamodifications.html#cfn-s3-bucket-replicamodifications-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html",
      "Properties": {
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-role",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-rules",
          "DuplicatesAllowed": false,
          "ItemType": "ReplicationRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicationDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html",
      "Properties": {
        "AccessControlTranslation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-accesscontroltranslation",
          "Required": false,
          "Type": "AccessControlTranslation",
          "UpdateType": "Mutable"
        },
        "Account": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-account",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-encryptionconfiguration",
          "Required": false,
          "Type": "EncryptionConfiguration",
          "UpdateType": "Mutable"
        },
        "Metrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-metrics",
          "Required": false,
          "Type": "Metrics",
          "UpdateType": "Mutable"
        },
        "ReplicationTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-replicationtime",
          "Required": false,
          "Type": "ReplicationTime",
          "UpdateType": "Mutable"
        },
        "StorageClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-storageclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicationRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html",
      "Properties": {
        "DeleteMarkerReplication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-deletemarkerreplication",
          "Required": false,
          "Type": "DeleteMarkerReplication",
          "UpdateType": "Mutable"
        },
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-destination",
          "Required": true,
          "Type": "ReplicationDestination",
          "UpdateType": "Mutable"
        },
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-filter",
          "Required": false,
          "Type": "ReplicationRuleFilter",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-priority",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceSelectionCriteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-sourceselectioncriteria",
          "Required": false,
          "Type": "SourceSelectionCriteria",
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicationRuleAndOperator": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationruleandoperator.html",
      "Properties": {
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationruleandoperator.html#cfn-s3-bucket-replicationruleandoperator-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationruleandoperator.html#cfn-s3-bucket-replicationruleandoperator-tagfilters",
          "DuplicatesAllowed": false,
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicationRuleFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html",
      "Properties": {
        "And": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html#cfn-s3-bucket-replicationrulefilter-and",
          "Required": false,
          "Type": "ReplicationRuleAndOperator",
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html#cfn-s3-bucket-replicationrulefilter-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagFilter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html#cfn-s3-bucket-replicationrulefilter-tagfilter",
          "Required": false,
          "Type": "TagFilter",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicationTime": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html",
      "Properties": {
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html#cfn-s3-bucket-replicationtime-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Time": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html#cfn-s3-bucket-replicationtime-time",
          "Required": true,
          "Type": "ReplicationTimeValue",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ReplicationTimeValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtimevalue.html",
      "Properties": {
        "Minutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtimevalue.html#cfn-s3-bucket-replicationtimevalue-minutes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.RoutingRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html",
      "Properties": {
        "RedirectRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-redirectrule",
          "Required": true,
          "Type": "RedirectRule",
          "UpdateType": "Mutable"
        },
        "RoutingRuleCondition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition",
          "Required": false,
          "Type": "RoutingRuleCondition",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.RoutingRuleCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html",
      "Properties": {
        "HttpErrorCodeReturnedEquals": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-httperrorcodereturnedequals",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyPrefixEquals": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-keyprefixequals",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html",
      "Properties": {
        "AbortIncompleteMultipartUpload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-abortincompletemultipartupload",
          "Required": false,
          "Type": "AbortIncompleteMultipartUpload",
          "UpdateType": "Mutable"
        },
        "ExpirationDate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationdate",
          "PrimitiveType": "Timestamp",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExpirationInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NoncurrentVersionExpirationInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversionexpirationindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NoncurrentVersionTransition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition",
          "Required": false,
          "Type": "NoncurrentVersionTransition",
          "UpdateType": "Mutable"
        },
        "NoncurrentVersionTransitions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransitions",
          "DuplicatesAllowed": false,
          "ItemType": "NoncurrentVersionTransition",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-tagfilters",
          "DuplicatesAllowed": false,
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Transition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transition",
          "Required": false,
          "Type": "Transition",
          "UpdateType": "Mutable"
        },
        "Transitions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transitions",
          "DuplicatesAllowed": false,
          "ItemType": "Transition",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.S3KeyFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html",
      "Properties": {
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules",
          "DuplicatesAllowed": false,
          "ItemType": "FilterRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.ServerSideEncryptionByDefault": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html",
      "Properties": {
        "KMSMasterKeyID": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-kmsmasterkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SSEAlgorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-ssealgorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketSSEAlgorithm"
          }
        }
      }
    },
    "AWS::S3::Bucket.ServerSideEncryptionRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html",
      "Properties": {
        "BucketKeyEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html#cfn-s3-bucket-serversideencryptionrule-bucketkeyenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServerSideEncryptionByDefault": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html#cfn-s3-bucket-serversideencryptionrule-serversideencryptionbydefault",
          "Required": false,
          "Type": "ServerSideEncryptionByDefault",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.SourceSelectionCriteria": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html",
      "Properties": {
        "ReplicaModifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html#cfn-s3-bucket-sourceselectioncriteria-replicamodifications",
          "Required": false,
          "Type": "ReplicaModifications",
          "UpdateType": "Mutable"
        },
        "SseKmsEncryptedObjects": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html#cfn-s3-bucket-sourceselectioncriteria-ssekmsencryptedobjects",
          "Required": false,
          "Type": "SseKmsEncryptedObjects",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.SseKmsEncryptedObjects": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html",
      "Properties": {
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html#cfn-s3-bucket-ssekmsencryptedobjects-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.StorageClassAnalysis": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html",
      "Properties": {
        "DataExport": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html#cfn-s3-bucket-storageclassanalysis-dataexport",
          "Required": false,
          "Type": "DataExport",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.TagFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html#cfn-s3-bucket-tagfilter-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html#cfn-s3-bucket-tagfilter-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.Tiering": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html",
      "Properties": {
        "AccessTier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html#cfn-s3-bucket-tiering-accesstier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Days": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html#cfn-s3-bucket-tiering-days",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.TopicConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html",
      "Properties": {
        "Event": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-event",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketTopicConfigurationEvent"
          }
        },
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-filter",
          "Required": false,
          "Type": "NotificationFilter",
          "UpdateType": "Mutable"
        },
        "Topic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-topic",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.Transition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html",
      "Properties": {
        "StorageClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-storageclass",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TransitionDate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitiondate",
          "PrimitiveType": "Timestamp",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TransitionInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitionindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::Bucket.VersioningConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html",
      "Properties": {
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html#cfn-s3-bucket-versioningconfig-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketVersioningConfigurationStatus"
          }
        }
      }
    },
    "AWS::S3::Bucket.WebsiteConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html",
      "Properties": {
        "ErrorDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-errordocument",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IndexDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-indexdocument",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RedirectAllRequestsTo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-redirectallrequeststo",
          "Required": false,
          "Type": "RedirectAllRequestsTo",
          "UpdateType": "Mutable"
        },
        "RoutingRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-routingrules",
          "DuplicatesAllowed": false,
          "ItemType": "RoutingRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.AccountLevel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-accountlevel.html",
      "Properties": {
        "ActivityMetrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-accountlevel.html#cfn-s3-storagelens-accountlevel-activitymetrics",
          "Required": false,
          "Type": "ActivityMetrics",
          "UpdateType": "Mutable"
        },
        "BucketLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-accountlevel.html#cfn-s3-storagelens-accountlevel-bucketlevel",
          "Required": true,
          "Type": "BucketLevel",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.ActivityMetrics": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-activitymetrics.html",
      "Properties": {
        "IsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-activitymetrics.html#cfn-s3-storagelens-activitymetrics-isenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.AwsOrg": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-awsorg.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-awsorg.html#cfn-s3-storagelens-awsorg-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.BucketLevel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketlevel.html",
      "Properties": {
        "ActivityMetrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketlevel.html#cfn-s3-storagelens-bucketlevel-activitymetrics",
          "Required": false,
          "Type": "ActivityMetrics",
          "UpdateType": "Mutable"
        },
        "PrefixLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketlevel.html#cfn-s3-storagelens-bucketlevel-prefixlevel",
          "Required": false,
          "Type": "PrefixLevel",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.BucketsAndRegions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketsandregions.html",
      "Properties": {
        "Buckets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketsandregions.html#cfn-s3-storagelens-bucketsandregions-buckets",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Regions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketsandregions.html#cfn-s3-storagelens-bucketsandregions-regions",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.DataExport": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-dataexport.html",
      "Properties": {
        "S3BucketDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-dataexport.html#cfn-s3-storagelens-dataexport-s3bucketdestination",
          "Required": true,
          "Type": "S3BucketDestination",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.Encryption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-encryption.html"
    },
    "AWS::S3::StorageLens.PrefixLevel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevel.html",
      "Properties": {
        "StorageMetrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevel.html#cfn-s3-storagelens-prefixlevel-storagemetrics",
          "Required": true,
          "Type": "PrefixLevelStorageMetrics",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.PrefixLevelStorageMetrics": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevelstoragemetrics.html",
      "Properties": {
        "IsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevelstoragemetrics.html#cfn-s3-storagelens-prefixlevelstoragemetrics-isenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SelectionCriteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevelstoragemetrics.html#cfn-s3-storagelens-prefixlevelstoragemetrics-selectioncriteria",
          "Required": false,
          "Type": "SelectionCriteria",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.S3BucketDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html",
      "Properties": {
        "AccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-accountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-encryption",
          "Required": false,
          "Type": "Encryption",
          "UpdateType": "Mutable"
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-format",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::S3::StorageLens.S3BucketDestination.Format"
          }
        },
        "OutputSchemaVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-outputschemaversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::S3::StorageLens.S3BucketDestination.OutputSchemaVersion"
          }
        },
        "Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.SelectionCriteria": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html",
      "Properties": {
        "Delimiter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html#cfn-s3-storagelens-selectioncriteria-delimiter",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxDepth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html#cfn-s3-storagelens-selectioncriteria-maxdepth",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinStorageBytesPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html#cfn-s3-storagelens-selectioncriteria-minstoragebytespercentage",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens.StorageLensConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html",
      "Properties": {
        "AccountLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-accountlevel",
          "Required": true,
          "Type": "AccountLevel",
          "UpdateType": "Mutable"
        },
        "AwsOrg": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-awsorg",
          "Required": false,
          "Type": "AwsOrg",
          "UpdateType": "Mutable"
        },
        "DataExport": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-dataexport",
          "Required": false,
          "Type": "DataExport",
          "UpdateType": "Mutable"
        },
        "Exclude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-exclude",
          "Required": false,
          "Type": "BucketsAndRegions",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3::StorageLens.StorageLensConfiguration.Id"
          }
        },
        "Include": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-include",
          "Required": false,
          "Type": "BucketsAndRegions",
          "UpdateType": "Mutable"
        },
        "IsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-isenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StorageLensArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-storagelensarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3Outposts::AccessPoint.VpcConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-accesspoint-vpcconfiguration.html",
      "Properties": {
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-accesspoint-vpcconfiguration.html#cfn-s3outposts-accesspoint-vpcconfiguration-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::AccessPoint.VpcConfiguration.VpcId"
          }
        }
      }
    },
    "AWS::S3Outposts::Bucket.AbortIncompleteMultipartUpload": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-abortincompletemultipartupload.html",
      "Properties": {
        "DaysAfterInitiation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-abortincompletemultipartupload.html#cfn-s3outposts-bucket-abortincompletemultipartupload-daysafterinitiation",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3Outposts::Bucket.LifecycleConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-lifecycleconfiguration.html",
      "Properties": {
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-lifecycleconfiguration.html#cfn-s3outposts-bucket-lifecycleconfiguration-rules",
          "DuplicatesAllowed": false,
          "ItemType": "Rule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3Outposts::Bucket.Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-rule.html",
      "Properties": {
        "AbortIncompleteMultipartUpload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-rule.html#cfn-s3outposts-bucket-rule-abortincompletemultipartupload",
          "Required": false,
          "Type": "AbortIncompleteMultipartUpload",
          "UpdateType": "Mutable"
        },
        "ExpirationDate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-rule.html#cfn-s3outposts-bucket-rule-expirationdate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Bucket.Rule.ExpirationDate"
          }
        },
        "ExpirationInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-rule.html#cfn-s3outposts-bucket-rule-expirationindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Filter": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-rule.html#cfn-s3outposts-bucket-rule-filter",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-rule.html#cfn-s3outposts-bucket-rule-id",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-bucket-rule.html#cfn-s3outposts-bucket-rule-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Bucket.Rule.Status"
          }
        }
      }
    },
    "AWS::S3Outposts::Endpoint.NetworkInterface": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-endpoint-networkinterface.html",
      "Properties": {
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3outposts-endpoint-networkinterface.html#cfn-s3outposts-endpoint-networkinterface-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Endpoint.NetworkInterface.NetworkInterfaceId"
          }
        }
      }
    },
    "AWS::SNS::Topic.Subscription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html",
      "Properties": {
        "Endpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html#cfn-sns-topic-subscription-endpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html#cfn-sns-topic-subscription-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SSM::Association.InstanceAssociationOutputLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html",
      "Properties": {
        "S3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html#cfn-ssm-association-instanceassociationoutputlocation-s3location",
          "Required": false,
          "Type": "S3OutputLocation",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::Association.ParameterValues": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html",
      "Properties": {
        "ParameterValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html#cfn-ssm-association-parametervalues-parametervalues",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::Association.S3OutputLocation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html",
      "Properties": {
        "OutputS3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.S3OutputLocation.OutputS3BucketName"
          }
        },
        "OutputS3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputS3Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.S3OutputLocation.OutputS3Region"
          }
        }
      }
    },
    "AWS::SSM::Association.Target": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html#cfn-ssm-association-target-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html#cfn-ssm-association-target-values",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTarget.Targets": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.LoggingInfo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html",
      "Properties": {
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html#cfn-ssm-maintenancewindowtask-logginginfo-region",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html#cfn-ssm-maintenancewindowtask-logginginfo-s3bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Prefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html#cfn-ssm-maintenancewindowtask-logginginfo-s3prefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowAutomationParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html",
      "Properties": {
        "DocumentVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-documentversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowLambdaParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html",
      "Properties": {
        "ClientContext": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-clientcontext",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Payload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-payload",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Qualifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-qualifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowRunCommandParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DocumentHash": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-documenthash",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DocumentHashType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-documenthashtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotificationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-notificationconfig",
          "Required": false,
          "Type": "NotificationConfig",
          "UpdateType": "Mutable"
        },
        "OutputS3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-outputs3bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutputS3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-outputs3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-servicerolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeoutSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-timeoutseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowStepFunctionsParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html",
      "Properties": {
        "Input": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-input",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.NotificationConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html",
      "Properties": {
        "NotificationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "NotificationEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationevents",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NotificationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.Target": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask.TaskInvocationParameters": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html",
      "Properties": {
        "MaintenanceWindowAutomationParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowautomationparameters",
          "Required": false,
          "Type": "MaintenanceWindowAutomationParameters",
          "UpdateType": "Mutable"
        },
        "MaintenanceWindowLambdaParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowlambdaparameters",
          "Required": false,
          "Type": "MaintenanceWindowLambdaParameters",
          "UpdateType": "Mutable"
        },
        "MaintenanceWindowRunCommandParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowruncommandparameters",
          "Required": false,
          "Type": "MaintenanceWindowRunCommandParameters",
          "UpdateType": "Mutable"
        },
        "MaintenanceWindowStepFunctionsParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowstepfunctionsparameters",
          "Required": false,
          "Type": "MaintenanceWindowStepFunctionsParameters",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::PatchBaseline.PatchFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Values": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-values",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::PatchBaseline.PatchFilterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html",
      "Properties": {
        "PatchFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html#cfn-ssm-patchbaseline-patchfiltergroup-patchfilters",
          "ItemType": "PatchFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::PatchBaseline.PatchSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html",
      "Properties": {
        "Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html#cfn-ssm-patchbaseline-patchsource-configuration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html#cfn-ssm-patchbaseline-patchsource-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Products": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html#cfn-ssm-patchbaseline-patchsource-products",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::PatchBaseline.PatchStringDate": {
      "PrimitiveType": "String"
    },
    "AWS::SSM::PatchBaseline.Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html",
      "Properties": {
        "ApproveAfterDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-approveafterdays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ApproveUntilDate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-approveuntildate",
          "Required": false,
          "Type": "PatchStringDate",
          "UpdateType": "Mutable"
        },
        "ComplianceLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-compliancelevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableNonSecurity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-enablenonsecurity",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PatchFilterGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-patchfiltergroup",
          "Required": false,
          "Type": "PatchFilterGroup",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::PatchBaseline.RuleGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html",
      "Properties": {
        "PatchRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html#cfn-ssm-patchbaseline-rulegroup-patchrules",
          "ItemType": "Rule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::ResourceDataSync.AwsOrganizationsSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-awsorganizationssource.html",
      "Properties": {
        "OrganizationSourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-awsorganizationssource.html#cfn-ssm-resourcedatasync-awsorganizationssource-organizationsourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.AwsOrganizationsSource.OrganizationSourceType"
          }
        },
        "OrganizationalUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-awsorganizationssource.html#cfn-ssm-resourcedatasync-awsorganizationssource-organizationalunits",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::ResourceDataSync.S3Destination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-s3destination.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-s3destination.html#cfn-ssm-resourcedatasync-s3destination-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.S3Destination.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-s3destination.html#cfn-ssm-resourcedatasync-s3destination-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.S3Destination.BucketPrefix"
          }
        },
        "BucketRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-s3destination.html#cfn-ssm-resourcedatasync-s3destination-bucketregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.S3Destination.BucketRegion"
          }
        },
        "KMSKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-s3destination.html#cfn-ssm-resourcedatasync-s3destination-kmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.S3Destination.KMSKeyArn"
          }
        },
        "SyncFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-s3destination.html#cfn-ssm-resourcedatasync-s3destination-syncformat",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.S3Destination.SyncFormat"
          }
        }
      }
    },
    "AWS::SSM::ResourceDataSync.SyncSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-syncsource.html",
      "Properties": {
        "AwsOrganizationsSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-syncsource.html#cfn-ssm-resourcedatasync-syncsource-awsorganizationssource",
          "Required": false,
          "Type": "AwsOrganizationsSource",
          "UpdateType": "Mutable"
        },
        "IncludeFutureRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-syncsource.html#cfn-ssm-resourcedatasync-syncsource-includefutureregions",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-syncsource.html#cfn-ssm-resourcedatasync-syncsource-sourceregions",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-resourcedatasync-syncsource.html#cfn-ssm-resourcedatasync-syncsource-sourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.SyncSource.SourceType"
          }
        }
      }
    },
    "AWS::SSO::InstanceAccessControlAttributeConfiguration.AccessControlAttribute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattribute.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattribute.html#cfn-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattribute-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattribute.html#cfn-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattribute-value",
          "Required": true,
          "Type": "AccessControlAttributeValue",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSO::InstanceAccessControlAttributeConfiguration.AccessControlAttributeValue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattributevalue.html",
      "Properties": {
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattributevalue.html#cfn-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattributevalue-source",
          "Required": true,
          "Type": "AccessControlAttributeValueSourceList",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSO::InstanceAccessControlAttributeConfiguration.AccessControlAttributeValueSourceList": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattributevaluesourcelist.html",
      "Properties": {
        "AccessControlAttributeValueSourceList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattributevaluesourcelist.html#cfn-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattributevaluesourcelist-accesscontrolattributevaluesourcelist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::App.ResourceSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-app-resourcespec.html",
      "Properties": {
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-app-resourcespec.html#cfn-sagemaker-app-resourcespec-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::App.ResourceSpec.InstanceType"
          }
        },
        "SageMakerImageArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-app-resourcespec.html#cfn-sagemaker-app-resourcespec-sagemakerimagearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::App.ResourceSpec.SageMakerImageArn"
          }
        },
        "SageMakerImageVersionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-app-resourcespec.html#cfn-sagemaker-app-resourcespec-sagemakerimageversionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::App.ResourceSpec.SageMakerImageVersionArn"
          }
        }
      }
    },
    "AWS::SageMaker::AppImageConfig.FileSystemConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-filesystemconfig.html",
      "Properties": {
        "DefaultGid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-filesystemconfig.html#cfn-sagemaker-appimageconfig-filesystemconfig-defaultgid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultUid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-filesystemconfig.html#cfn-sagemaker-appimageconfig-filesystemconfig-defaultuid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MountPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-filesystemconfig.html#cfn-sagemaker-appimageconfig-filesystemconfig-mountpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::AppImageConfig.FileSystemConfig.MountPath"
          }
        }
      }
    },
    "AWS::SageMaker::AppImageConfig.KernelGatewayImageConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-kernelgatewayimageconfig.html",
      "Properties": {
        "FileSystemConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-kernelgatewayimageconfig.html#cfn-sagemaker-appimageconfig-kernelgatewayimageconfig-filesystemconfig",
          "Required": false,
          "Type": "FileSystemConfig",
          "UpdateType": "Mutable"
        },
        "KernelSpecs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-kernelgatewayimageconfig.html#cfn-sagemaker-appimageconfig-kernelgatewayimageconfig-kernelspecs",
          "ItemType": "KernelSpec",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::AppImageConfig.KernelSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-kernelspec.html",
      "Properties": {
        "DisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-kernelspec.html#cfn-sagemaker-appimageconfig-kernelspec-displayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::AppImageConfig.KernelSpec.DisplayName"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-appimageconfig-kernelspec.html#cfn-sagemaker-appimageconfig-kernelspec-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::AppImageConfig.KernelSpec.Name"
          }
        }
      }
    },
    "AWS::SageMaker::CodeRepository.GitConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html",
      "Properties": {
        "Branch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html#cfn-sagemaker-coderepository-gitconfig-branch",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RepositoryUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html#cfn-sagemaker-coderepository-gitconfig-repositoryurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SecretArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html#cfn-sagemaker-coderepository-gitconfig-secretarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.ClusterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig.html",
      "Properties": {
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig.html#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancecount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.ClusterConfig.InstanceCount"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig.html#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VolumeKmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig.html#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumekmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VolumeSizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig.html#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumesizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.ClusterConfig.VolumeSizeInGB"
          }
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.ConstraintsResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource.html#cfn-sagemaker-dataqualityjobdefinition-constraintsresource-s3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.ConstraintsResource.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.html",
      "Properties": {
        "ContainerArguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerarguments",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.ContainerArguments"
          }
        },
        "ContainerEntrypoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerentrypoint",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.ContainerEntrypoint"
          }
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-environment",
          "Required": false,
          "Type": "Environment",
          "UpdateType": "Immutable"
        },
        "ImageUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-imageuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.ImageUri"
          }
        },
        "PostAnalyticsProcessorSourceUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-postanalyticsprocessorsourceuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.PostAnalyticsProcessorSourceUri"
          }
        },
        "RecordPreprocessorSourceUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-recordpreprocessorsourceuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.RecordPreprocessorSourceUri"
          }
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityBaselineConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig.html",
      "Properties": {
        "BaseliningJobName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig.html#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-baseliningjobname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.DataQualityBaselineConfig.BaseliningJobName"
          }
        },
        "ConstraintsResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig.html#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-constraintsresource",
          "Required": false,
          "Type": "ConstraintsResource",
          "UpdateType": "Immutable"
        },
        "StatisticsResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig.html#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-statisticsresource",
          "Required": false,
          "Type": "StatisticsResource",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityJobInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput.html",
      "Properties": {
        "EndpointInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput-endpointinput",
          "Required": true,
          "Type": "EndpointInput",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.EndpointInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-endpointinput.html",
      "Properties": {
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-endpointinput.html#cfn-sagemaker-dataqualityjobdefinition-endpointinput-endpointname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.EndpointName"
          }
        },
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-endpointinput.html#cfn-sagemaker-dataqualityjobdefinition-endpointinput-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.LocalPath"
          }
        },
        "S3DataDistributionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-endpointinput.html#cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3datadistributiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.S3DataDistributionType"
          }
        },
        "S3InputMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-endpointinput.html#cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3inputmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.S3InputMode"
          }
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-environment.html"
    },
    "AWS::SageMaker::DataQualityJobDefinition.MonitoringOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput.html",
      "Properties": {
        "S3Output": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput.html#cfn-sagemaker-dataqualityjobdefinition-monitoringoutput-s3output",
          "Required": true,
          "Type": "S3Output",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.MonitoringOutputConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.MonitoringOutputConfig.KmsKeyId"
          }
        },
        "MonitoringOutputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-monitoringoutputs",
          "ItemType": "MonitoringOutput",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.MonitoringResources": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources.html",
      "Properties": {
        "ClusterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources.html#cfn-sagemaker-dataqualityjobdefinition-monitoringresources-clusterconfig",
          "Required": true,
          "Type": "ClusterConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.NetworkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-networkconfig.html",
      "Properties": {
        "EnableInterContainerTrafficEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-networkconfig.html#cfn-sagemaker-dataqualityjobdefinition-networkconfig-enableintercontainertrafficencryption",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EnableNetworkIsolation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-networkconfig.html#cfn-sagemaker-dataqualityjobdefinition-networkconfig-enablenetworkisolation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-networkconfig.html#cfn-sagemaker-dataqualityjobdefinition-networkconfig-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.S3Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-s3output.html",
      "Properties": {
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-s3output.html#cfn-sagemaker-dataqualityjobdefinition-s3output-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.S3Output.LocalPath"
          }
        },
        "S3UploadMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-s3output.html#cfn-sagemaker-dataqualityjobdefinition-s3output-s3uploadmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.S3Output.S3UploadMode"
          }
        },
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-s3output.html#cfn-sagemaker-dataqualityjobdefinition-s3output-s3uri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.S3Output.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.StatisticsResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource.html#cfn-sagemaker-dataqualityjobdefinition-statisticsresource-s3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.StatisticsResource.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.StoppingCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition.html",
      "Properties": {
        "MaxRuntimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition.html#cfn-sagemaker-dataqualityjobdefinition-stoppingcondition-maxruntimeinseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.StoppingCondition.MaxRuntimeInSeconds"
          }
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig.html#cfn-sagemaker-dataqualityjobdefinition-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.VpcConfig.SecurityGroupIds"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig.html#cfn-sagemaker-dataqualityjobdefinition-vpcconfig-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.VpcConfig.Subnets"
          }
        }
      }
    },
    "AWS::SageMaker::Device.Device": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-device-device.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-device-device.html#cfn-sagemaker-device-device-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Device.Device.Description"
          }
        },
        "DeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-device-device.html#cfn-sagemaker-device-device-devicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Device.Device.DeviceName"
          }
        },
        "IotThingName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-device-device.html#cfn-sagemaker-device-device-iotthingname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Device.Device.IotThingName"
          }
        }
      }
    },
    "AWS::SageMaker::DeviceFleet.EdgeOutputConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-devicefleet-edgeoutputconfig.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-devicefleet-edgeoutputconfig.html#cfn-sagemaker-devicefleet-edgeoutputconfig-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DeviceFleet.EdgeOutputConfig.KmsKeyId"
          }
        },
        "S3OutputLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-devicefleet-edgeoutputconfig.html#cfn-sagemaker-devicefleet-edgeoutputconfig-s3outputlocation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DeviceFleet.EdgeOutputConfig.S3OutputLocation"
          }
        }
      }
    },
    "AWS::SageMaker::Domain.CustomImage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-customimage.html",
      "Properties": {
        "AppImageConfigName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-customimage.html#cfn-sagemaker-domain-customimage-appimageconfigname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.CustomImage.AppImageConfigName"
          }
        },
        "ImageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-customimage.html#cfn-sagemaker-domain-customimage-imagename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.CustomImage.ImageName"
          }
        },
        "ImageVersionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-customimage.html#cfn-sagemaker-domain-customimage-imageversionnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::Domain.JupyterServerAppSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-jupyterserverappsettings.html",
      "Properties": {
        "DefaultResourceSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-jupyterserverappsettings.html#cfn-sagemaker-domain-jupyterserverappsettings-defaultresourcespec",
          "Required": false,
          "Type": "ResourceSpec",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::Domain.KernelGatewayAppSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-kernelgatewayappsettings.html",
      "Properties": {
        "CustomImages": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-kernelgatewayappsettings.html#cfn-sagemaker-domain-kernelgatewayappsettings-customimages",
          "DuplicatesAllowed": true,
          "ItemType": "CustomImage",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DefaultResourceSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-kernelgatewayappsettings.html#cfn-sagemaker-domain-kernelgatewayappsettings-defaultresourcespec",
          "Required": false,
          "Type": "ResourceSpec",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::Domain.ResourceSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-resourcespec.html",
      "Properties": {
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-resourcespec.html#cfn-sagemaker-domain-resourcespec-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.ResourceSpec.InstanceType"
          }
        },
        "SageMakerImageArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-resourcespec.html#cfn-sagemaker-domain-resourcespec-sagemakerimagearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.ResourceSpec.SageMakerImageArn"
          }
        },
        "SageMakerImageVersionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-resourcespec.html#cfn-sagemaker-domain-resourcespec-sagemakerimageversionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.ResourceSpec.SageMakerImageVersionArn"
          }
        }
      }
    },
    "AWS::SageMaker::Domain.SharingSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-sharingsettings.html",
      "Properties": {
        "NotebookOutputOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-sharingsettings.html#cfn-sagemaker-domain-sharingsettings-notebookoutputoption",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.SharingSettings.NotebookOutputOption"
          }
        },
        "S3KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-sharingsettings.html#cfn-sagemaker-domain-sharingsettings-s3kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.SharingSettings.S3KmsKeyId"
          }
        },
        "S3OutputPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-sharingsettings.html#cfn-sagemaker-domain-sharingsettings-s3outputpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.SharingSettings.S3OutputPath"
          }
        }
      }
    },
    "AWS::SageMaker::Domain.UserSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html",
      "Properties": {
        "ExecutionRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-executionrole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.UserSettings.ExecutionRole"
          }
        },
        "JupyterServerAppSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-jupyterserverappsettings",
          "Required": false,
          "Type": "JupyterServerAppSettings",
          "UpdateType": "Mutable"
        },
        "KernelGatewayAppSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-kernelgatewayappsettings",
          "Required": false,
          "Type": "KernelGatewayAppSettings",
          "UpdateType": "Mutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-securitygroups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.UserSettings.SecurityGroups"
          }
        },
        "SharingSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-sharingsettings",
          "Required": false,
          "Type": "SharingSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::FeatureGroup.FeatureDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-featuredefinition.html",
      "Properties": {
        "FeatureName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-featuredefinition.html#cfn-sagemaker-featuregroup-featuredefinition-featurename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::FeatureGroup.FeatureDefinition.FeatureName"
          }
        },
        "FeatureType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-featuredefinition.html#cfn-sagemaker-featuregroup-featuredefinition-featuretype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::FeatureGroup.FeatureDefinition.FeatureType"
          }
        }
      }
    },
    "AWS::SageMaker::Model.ContainerDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html",
      "Properties": {
        "ContainerHostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-containerhostname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-environment",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Image": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-image",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ImageConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-imageconfig",
          "Required": false,
          "Type": "ImageConfig",
          "UpdateType": "Immutable"
        },
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-mode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ModelDataUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-modeldataurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ModelPackageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-modelpackagename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MultiModelConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-multimodelconfig",
          "Required": false,
          "Type": "MultiModelConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::Model.ImageConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition-imageconfig.html",
      "Properties": {
        "RepositoryAccessMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition-imageconfig.html#cfn-sagemaker-model-containerdefinition-imageconfig-repositoryaccessmode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::Model.InferenceExecutionConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-inferenceexecutionconfig.html",
      "Properties": {
        "Mode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-inferenceexecutionconfig.html#cfn-sagemaker-model-inferenceexecutionconfig-mode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::Model.MultiModelConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition-multimodelconfig.html",
      "Properties": {
        "ModelCacheSetting": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition-multimodelconfig.html#cfn-sagemaker-model-containerdefinition-multimodelconfig-modelcachesetting",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::Model.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-vpcconfig.html#cfn-sagemaker-model-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-vpcconfig.html#cfn-sagemaker-model-vpcconfig-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-clusterconfig.html",
      "Properties": {
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-clusterconfig.html#cfn-sagemaker-modelbiasjobdefinition-clusterconfig-instancecount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig.InstanceCount"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-clusterconfig.html#cfn-sagemaker-modelbiasjobdefinition-clusterconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VolumeKmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-clusterconfig.html#cfn-sagemaker-modelbiasjobdefinition-clusterconfig-volumekmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VolumeSizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-clusterconfig.html#cfn-sagemaker-modelbiasjobdefinition-clusterconfig-volumesizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig.VolumeSizeInGB"
          }
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-constraintsresource.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-constraintsresource.html#cfn-sagemaker-modelbiasjobdefinition-constraintsresource-s3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html",
      "Properties": {
        "EndTimeOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-endtimeoffset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.EndTimeOffset"
          }
        },
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-endpointname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.EndpointName"
          }
        },
        "FeaturesAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-featuresattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InferenceAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-inferenceattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.LocalPath"
          }
        },
        "ProbabilityAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-probabilityattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ProbabilityThresholdAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-probabilitythresholdattribute",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "S3DataDistributionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-s3datadistributiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.S3DataDistributionType"
          }
        },
        "S3InputMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-s3inputmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.S3InputMode"
          }
        },
        "StartTimeOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-endpointinput.html#cfn-sagemaker-modelbiasjobdefinition-endpointinput-starttimeoffset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.StartTimeOffset"
          }
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-environment.html"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasappspecification.html",
      "Properties": {
        "ConfigUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasappspecification.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasappspecification-configuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification.ConfigUri"
          }
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasappspecification.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasappspecification-environment",
          "Required": false,
          "Type": "Environment",
          "UpdateType": "Immutable"
        },
        "ImageUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasappspecification.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasappspecification-imageuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification.ImageUri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasbaselineconfig.html",
      "Properties": {
        "BaseliningJobName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasbaselineconfig.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasbaselineconfig-baseliningjobname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig.BaseliningJobName"
          }
        },
        "ConstraintsResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasbaselineconfig.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasbaselineconfig-constraintsresource",
          "Required": false,
          "Type": "ConstraintsResource",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasjobinput.html",
      "Properties": {
        "EndpointInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasjobinput.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasjobinput-endpointinput",
          "Required": true,
          "Type": "EndpointInput",
          "UpdateType": "Immutable"
        },
        "GroundTruthS3Input": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-modelbiasjobinput.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasjobinput-groundtruths3input",
          "Required": true,
          "Type": "MonitoringGroundTruthS3Input",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringgroundtruths3input.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringgroundtruths3input.html#cfn-sagemaker-modelbiasjobdefinition-monitoringgroundtruths3input-s3uri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringoutput.html",
      "Properties": {
        "S3Output": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringoutput.html#cfn-sagemaker-modelbiasjobdefinition-monitoringoutput-s3output",
          "Required": true,
          "Type": "S3Output",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringoutputconfig.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-modelbiasjobdefinition-monitoringoutputconfig-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig.KmsKeyId"
          }
        },
        "MonitoringOutputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-modelbiasjobdefinition-monitoringoutputconfig-monitoringoutputs",
          "ItemType": "MonitoringOutput",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringresources.html",
      "Properties": {
        "ClusterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-monitoringresources.html#cfn-sagemaker-modelbiasjobdefinition-monitoringresources-clusterconfig",
          "Required": true,
          "Type": "ClusterConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-networkconfig.html",
      "Properties": {
        "EnableInterContainerTrafficEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-networkconfig.html#cfn-sagemaker-modelbiasjobdefinition-networkconfig-enableintercontainertrafficencryption",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EnableNetworkIsolation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-networkconfig.html#cfn-sagemaker-modelbiasjobdefinition-networkconfig-enablenetworkisolation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-networkconfig.html#cfn-sagemaker-modelbiasjobdefinition-networkconfig-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.S3Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-s3output.html",
      "Properties": {
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-s3output.html#cfn-sagemaker-modelbiasjobdefinition-s3output-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.S3Output.LocalPath"
          }
        },
        "S3UploadMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-s3output.html#cfn-sagemaker-modelbiasjobdefinition-s3output-s3uploadmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.S3Output.S3UploadMode"
          }
        },
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-s3output.html#cfn-sagemaker-modelbiasjobdefinition-s3output-s3uri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.S3Output.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-stoppingcondition.html",
      "Properties": {
        "MaxRuntimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-stoppingcondition.html#cfn-sagemaker-modelbiasjobdefinition-stoppingcondition-maxruntimeinseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition.MaxRuntimeInSeconds"
          }
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-vpcconfig.html#cfn-sagemaker-modelbiasjobdefinition-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig.SecurityGroupIds"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelbiasjobdefinition-vpcconfig.html#cfn-sagemaker-modelbiasjobdefinition-vpcconfig-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig.Subnets"
          }
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ClusterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-clusterconfig.html",
      "Properties": {
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-clusterconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-clusterconfig-instancecount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.ClusterConfig.InstanceCount"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-clusterconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-clusterconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VolumeKmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-clusterconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-clusterconfig-volumekmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VolumeSizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-clusterconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-clusterconfig-volumesizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.ClusterConfig.VolumeSizeInGB"
          }
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ConstraintsResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-constraintsresource.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-constraintsresource.html#cfn-sagemaker-modelexplainabilityjobdefinition-constraintsresource-s3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.ConstraintsResource.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html",
      "Properties": {
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-endpointinput-endpointname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.EndpointName"
          }
        },
        "FeaturesAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-endpointinput-featuresattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InferenceAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-endpointinput-inferenceattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-endpointinput-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.LocalPath"
          }
        },
        "ProbabilityAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-endpointinput-probabilityattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "S3DataDistributionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-endpointinput-s3datadistributiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.S3DataDistributionType"
          }
        },
        "S3InputMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-endpointinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-endpointinput-s3inputmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.S3InputMode"
          }
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-environment.html"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityAppSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification.html",
      "Properties": {
        "ConfigUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification-configuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityAppSpecification.ConfigUri"
          }
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification-environment",
          "Required": false,
          "Type": "Environment",
          "UpdateType": "Immutable"
        },
        "ImageUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification-imageuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityAppSpecification.ImageUri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityBaselineConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilitybaselineconfig.html",
      "Properties": {
        "BaseliningJobName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilitybaselineconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilitybaselineconfig-baseliningjobname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityBaselineConfig.BaseliningJobName"
          }
        },
        "ConstraintsResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilitybaselineconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilitybaselineconfig-constraintsresource",
          "Required": false,
          "Type": "ConstraintsResource",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityJobInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityjobinput.html",
      "Properties": {
        "EndpointInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityjobinput.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityjobinput-endpointinput",
          "Required": true,
          "Type": "EndpointInput",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.MonitoringOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-monitoringoutput.html",
      "Properties": {
        "S3Output": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-monitoringoutput.html#cfn-sagemaker-modelexplainabilityjobdefinition-monitoringoutput-s3output",
          "Required": true,
          "Type": "S3Output",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.MonitoringOutputConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-monitoringoutputconfig.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-monitoringoutputconfig-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.MonitoringOutputConfig.KmsKeyId"
          }
        },
        "MonitoringOutputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-monitoringoutputconfig-monitoringoutputs",
          "ItemType": "MonitoringOutput",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.MonitoringResources": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-monitoringresources.html",
      "Properties": {
        "ClusterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-monitoringresources.html#cfn-sagemaker-modelexplainabilityjobdefinition-monitoringresources-clusterconfig",
          "Required": true,
          "Type": "ClusterConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.NetworkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-networkconfig.html",
      "Properties": {
        "EnableInterContainerTrafficEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-networkconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-networkconfig-enableintercontainertrafficencryption",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EnableNetworkIsolation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-networkconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-networkconfig-enablenetworkisolation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-networkconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-networkconfig-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.S3Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-s3output.html",
      "Properties": {
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-s3output.html#cfn-sagemaker-modelexplainabilityjobdefinition-s3output-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.S3Output.LocalPath"
          }
        },
        "S3UploadMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-s3output.html#cfn-sagemaker-modelexplainabilityjobdefinition-s3output-s3uploadmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.S3Output.S3UploadMode"
          }
        },
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-s3output.html#cfn-sagemaker-modelexplainabilityjobdefinition-s3output-s3uri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.S3Output.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.StoppingCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-stoppingcondition.html",
      "Properties": {
        "MaxRuntimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-stoppingcondition.html#cfn-sagemaker-modelexplainabilityjobdefinition-stoppingcondition-maxruntimeinseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.StoppingCondition.MaxRuntimeInSeconds"
          }
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-vpcconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.VpcConfig.SecurityGroupIds"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelexplainabilityjobdefinition-vpcconfig.html#cfn-sagemaker-modelexplainabilityjobdefinition-vpcconfig-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.VpcConfig.Subnets"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ClusterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-clusterconfig.html",
      "Properties": {
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-clusterconfig.html#cfn-sagemaker-modelqualityjobdefinition-clusterconfig-instancecount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ClusterConfig.InstanceCount"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-clusterconfig.html#cfn-sagemaker-modelqualityjobdefinition-clusterconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VolumeKmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-clusterconfig.html#cfn-sagemaker-modelqualityjobdefinition-clusterconfig-volumekmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VolumeSizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-clusterconfig.html#cfn-sagemaker-modelqualityjobdefinition-clusterconfig-volumesizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ClusterConfig.VolumeSizeInGB"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ConstraintsResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-constraintsresource.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-constraintsresource.html#cfn-sagemaker-modelqualityjobdefinition-constraintsresource-s3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ConstraintsResource.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html",
      "Properties": {
        "EndTimeOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-endtimeoffset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.EndTimeOffset"
          }
        },
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-endpointname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.EndpointName"
          }
        },
        "InferenceAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-inferenceattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.LocalPath"
          }
        },
        "ProbabilityAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-probabilityattribute",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ProbabilityThresholdAttribute": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-probabilitythresholdattribute",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "S3DataDistributionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-s3datadistributiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.S3DataDistributionType"
          }
        },
        "S3InputMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-s3inputmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.S3InputMode"
          }
        },
        "StartTimeOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-endpointinput.html#cfn-sagemaker-modelqualityjobdefinition-endpointinput-starttimeoffset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.StartTimeOffset"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-environment.html"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html",
      "Properties": {
        "ContainerArguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification-containerarguments",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ContainerArguments"
          }
        },
        "ContainerEntrypoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification-containerentrypoint",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ContainerEntrypoint"
          }
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification-environment",
          "Required": false,
          "Type": "Environment",
          "UpdateType": "Immutable"
        },
        "ImageUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification-imageuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ImageUri"
          }
        },
        "PostAnalyticsProcessorSourceUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification-postanalyticsprocessorsourceuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.PostAnalyticsProcessorSourceUri"
          }
        },
        "ProblemType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification-problemtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ProblemType"
          }
        },
        "RecordPreprocessorSourceUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityappspecification.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification-recordpreprocessorsourceuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.RecordPreprocessorSourceUri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityBaselineConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualitybaselineconfig.html",
      "Properties": {
        "BaseliningJobName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualitybaselineconfig.html#cfn-sagemaker-modelqualityjobdefinition-modelqualitybaselineconfig-baseliningjobname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityBaselineConfig.BaseliningJobName"
          }
        },
        "ConstraintsResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualitybaselineconfig.html#cfn-sagemaker-modelqualityjobdefinition-modelqualitybaselineconfig-constraintsresource",
          "Required": false,
          "Type": "ConstraintsResource",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityJobInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityjobinput.html",
      "Properties": {
        "EndpointInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityjobinput.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityjobinput-endpointinput",
          "Required": true,
          "Type": "EndpointInput",
          "UpdateType": "Immutable"
        },
        "GroundTruthS3Input": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-modelqualityjobinput.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityjobinput-groundtruths3input",
          "Required": true,
          "Type": "MonitoringGroundTruthS3Input",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.MonitoringGroundTruthS3Input": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringgroundtruths3input.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringgroundtruths3input.html#cfn-sagemaker-modelqualityjobdefinition-monitoringgroundtruths3input-s3uri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.MonitoringGroundTruthS3Input.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.MonitoringOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringoutput.html",
      "Properties": {
        "S3Output": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringoutput.html#cfn-sagemaker-modelqualityjobdefinition-monitoringoutput-s3output",
          "Required": true,
          "Type": "S3Output",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.MonitoringOutputConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringoutputconfig.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-modelqualityjobdefinition-monitoringoutputconfig-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.MonitoringOutputConfig.KmsKeyId"
          }
        },
        "MonitoringOutputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringoutputconfig.html#cfn-sagemaker-modelqualityjobdefinition-monitoringoutputconfig-monitoringoutputs",
          "ItemType": "MonitoringOutput",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.MonitoringResources": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringresources.html",
      "Properties": {
        "ClusterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-monitoringresources.html#cfn-sagemaker-modelqualityjobdefinition-monitoringresources-clusterconfig",
          "Required": true,
          "Type": "ClusterConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.NetworkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-networkconfig.html",
      "Properties": {
        "EnableInterContainerTrafficEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-networkconfig.html#cfn-sagemaker-modelqualityjobdefinition-networkconfig-enableintercontainertrafficencryption",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EnableNetworkIsolation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-networkconfig.html#cfn-sagemaker-modelqualityjobdefinition-networkconfig-enablenetworkisolation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-networkconfig.html#cfn-sagemaker-modelqualityjobdefinition-networkconfig-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.S3Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-s3output.html",
      "Properties": {
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-s3output.html#cfn-sagemaker-modelqualityjobdefinition-s3output-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.S3Output.LocalPath"
          }
        },
        "S3UploadMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-s3output.html#cfn-sagemaker-modelqualityjobdefinition-s3output-s3uploadmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.S3Output.S3UploadMode"
          }
        },
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-s3output.html#cfn-sagemaker-modelqualityjobdefinition-s3output-s3uri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.S3Output.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.StoppingCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-stoppingcondition.html",
      "Properties": {
        "MaxRuntimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-stoppingcondition.html#cfn-sagemaker-modelqualityjobdefinition-stoppingcondition-maxruntimeinseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.StoppingCondition.MaxRuntimeInSeconds"
          }
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-vpcconfig.html#cfn-sagemaker-modelqualityjobdefinition-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.VpcConfig.SecurityGroupIds"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-modelqualityjobdefinition-vpcconfig.html#cfn-sagemaker-modelqualityjobdefinition-vpcconfig-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.VpcConfig.Subnets"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.BaselineConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-baselineconfig.html",
      "Properties": {
        "ConstraintsResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-baselineconfig.html#cfn-sagemaker-monitoringschedule-baselineconfig-constraintsresource",
          "Required": false,
          "Type": "ConstraintsResource",
          "UpdateType": "Mutable"
        },
        "StatisticsResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-baselineconfig.html#cfn-sagemaker-monitoringschedule-baselineconfig-statisticsresource",
          "Required": false,
          "Type": "StatisticsResource",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.ClusterConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html",
      "Properties": {
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-instancecount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.ClusterConfig.InstanceCount"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VolumeKmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-volumekmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeSizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-volumesizeingb",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.ClusterConfig.VolumeSizeInGB"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.ConstraintsResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-constraintsresource.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-constraintsresource.html#cfn-sagemaker-monitoringschedule-constraintsresource-s3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.ConstraintsResource.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.EndpointInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html",
      "Properties": {
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-endpointname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.EndpointInput.EndpointName"
          }
        },
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.EndpointInput.LocalPath"
          }
        },
        "S3DataDistributionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-s3datadistributiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.EndpointInput.S3DataDistributionType"
          }
        },
        "S3InputMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-s3inputmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.EndpointInput.S3InputMode"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.Environment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-environment.html"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html",
      "Properties": {
        "ContainerArguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-containerarguments",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.ContainerArguments"
          }
        },
        "ContainerEntrypoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-containerentrypoint",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.ContainerEntrypoint"
          }
        },
        "ImageUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-imageuri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.ImageUri"
          }
        },
        "PostAnalyticsProcessorSourceUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-postanalyticsprocessorsourceuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.PostAnalyticsProcessorSourceUri"
          }
        },
        "RecordPreprocessorSourceUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-recordpreprocessorsourceuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.RecordPreprocessorSourceUri"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html",
      "Properties": {
        "CreationTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-creationtime",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-endpointname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.EndpointName"
          }
        },
        "FailureReason": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-failurereason",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LastModifiedTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-lastmodifiedtime",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MonitoringExecutionStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-monitoringexecutionstatus",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.MonitoringExecutionStatus"
          }
        },
        "MonitoringScheduleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-monitoringschedulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.MonitoringScheduleName"
          }
        },
        "ProcessingJobArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-processingjobarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.ProcessingJobArn"
          }
        },
        "ScheduledTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-scheduledtime",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringInput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinput.html",
      "Properties": {
        "EndpointInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinput.html#cfn-sagemaker-monitoringschedule-monitoringinput-endpointinput",
          "Required": true,
          "Type": "EndpointInput",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringInputs": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinputs.html",
      "Properties": {
        "MonitoringInputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinputs.html#cfn-sagemaker-monitoringschedule-monitoringinputs-monitoringinputs",
          "ItemType": "MonitoringInput",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringJobDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html",
      "Properties": {
        "BaselineConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-baselineconfig",
          "Required": false,
          "Type": "BaselineConfig",
          "UpdateType": "Mutable"
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-environment",
          "Required": false,
          "Type": "Environment",
          "UpdateType": "Mutable"
        },
        "MonitoringAppSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringappspecification",
          "Required": true,
          "Type": "MonitoringAppSpecification",
          "UpdateType": "Mutable"
        },
        "MonitoringInputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringinputs",
          "Required": true,
          "Type": "MonitoringInputs",
          "UpdateType": "Mutable"
        },
        "MonitoringOutputConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringoutputconfig",
          "Required": true,
          "Type": "MonitoringOutputConfig",
          "UpdateType": "Mutable"
        },
        "MonitoringResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringresources",
          "Required": true,
          "Type": "MonitoringResources",
          "UpdateType": "Mutable"
        },
        "NetworkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-networkconfig",
          "Required": false,
          "Type": "NetworkConfig",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringJobDefinition.RoleArn"
          }
        },
        "StoppingCondition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-stoppingcondition",
          "Required": false,
          "Type": "StoppingCondition",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutput.html",
      "Properties": {
        "S3Output": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutput.html#cfn-sagemaker-monitoringschedule-monitoringoutput-s3output",
          "Required": true,
          "Type": "S3Output",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringOutputConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutputconfig.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutputconfig.html#cfn-sagemaker-monitoringschedule-monitoringoutputconfig-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringOutputConfig.KmsKeyId"
          }
        },
        "MonitoringOutputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutputconfig.html#cfn-sagemaker-monitoringschedule-monitoringoutputconfig-monitoringoutputs",
          "ItemType": "MonitoringOutput",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringResources": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringresources.html",
      "Properties": {
        "ClusterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringresources.html#cfn-sagemaker-monitoringschedule-monitoringresources-clusterconfig",
          "Required": true,
          "Type": "ClusterConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html",
      "Properties": {
        "MonitoringJobDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig-monitoringjobdefinition",
          "Required": false,
          "Type": "MonitoringJobDefinition",
          "UpdateType": "Mutable"
        },
        "MonitoringJobDefinitionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig-monitoringjobdefinitionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleConfig.MonitoringJobDefinitionName"
          }
        },
        "MonitoringType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig-monitoringtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleConfig.MonitoringType"
          }
        },
        "ScheduleConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig-scheduleconfig",
          "Required": false,
          "Type": "ScheduleConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.NetworkConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html",
      "Properties": {
        "EnableInterContainerTrafficEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html#cfn-sagemaker-monitoringschedule-networkconfig-enableintercontainertrafficencryption",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableNetworkIsolation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html#cfn-sagemaker-monitoringschedule-networkconfig-enablenetworkisolation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html#cfn-sagemaker-monitoringschedule-networkconfig-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.S3Output": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html",
      "Properties": {
        "LocalPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html#cfn-sagemaker-monitoringschedule-s3output-localpath",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.S3Output.LocalPath"
          }
        },
        "S3UploadMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html#cfn-sagemaker-monitoringschedule-s3output-s3uploadmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.S3Output.S3UploadMode"
          }
        },
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html#cfn-sagemaker-monitoringschedule-s3output-s3uri",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.S3Output.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.ScheduleConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-scheduleconfig.html",
      "Properties": {
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-scheduleconfig.html#cfn-sagemaker-monitoringschedule-scheduleconfig-scheduleexpression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.ScheduleConfig.ScheduleExpression"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.StatisticsResource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-statisticsresource.html",
      "Properties": {
        "S3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-statisticsresource.html#cfn-sagemaker-monitoringschedule-statisticsresource-s3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.StatisticsResource.S3Uri"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.StoppingCondition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-stoppingcondition.html",
      "Properties": {
        "MaxRuntimeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-stoppingcondition.html#cfn-sagemaker-monitoringschedule-stoppingcondition-maxruntimeinseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.StoppingCondition.MaxRuntimeInSeconds"
          }
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule.VpcConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-vpcconfig.html#cfn-sagemaker-monitoringschedule-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.VpcConfig.SecurityGroupIds"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-vpcconfig.html#cfn-sagemaker-monitoringschedule-vpcconfig-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.VpcConfig.Subnets"
          }
        }
      }
    },
    "AWS::SageMaker::UserProfile.CustomImage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-customimage.html",
      "Properties": {
        "AppImageConfigName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-customimage.html#cfn-sagemaker-userprofile-customimage-appimageconfigname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.CustomImage.AppImageConfigName"
          }
        },
        "ImageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-customimage.html#cfn-sagemaker-userprofile-customimage-imagename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.CustomImage.ImageName"
          }
        },
        "ImageVersionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-customimage.html#cfn-sagemaker-userprofile-customimage-imageversionnumber",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::UserProfile.JupyterServerAppSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-jupyterserverappsettings.html",
      "Properties": {
        "DefaultResourceSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-jupyterserverappsettings.html#cfn-sagemaker-userprofile-jupyterserverappsettings-defaultresourcespec",
          "Required": false,
          "Type": "ResourceSpec",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::UserProfile.KernelGatewayAppSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-kernelgatewayappsettings.html",
      "Properties": {
        "CustomImages": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-kernelgatewayappsettings.html#cfn-sagemaker-userprofile-kernelgatewayappsettings-customimages",
          "DuplicatesAllowed": true,
          "ItemType": "CustomImage",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DefaultResourceSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-kernelgatewayappsettings.html#cfn-sagemaker-userprofile-kernelgatewayappsettings-defaultresourcespec",
          "Required": false,
          "Type": "ResourceSpec",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::UserProfile.ResourceSpec": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-resourcespec.html",
      "Properties": {
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-resourcespec.html#cfn-sagemaker-userprofile-resourcespec-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.ResourceSpec.InstanceType"
          }
        },
        "SageMakerImageArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-resourcespec.html#cfn-sagemaker-userprofile-resourcespec-sagemakerimagearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.ResourceSpec.SageMakerImageArn"
          }
        },
        "SageMakerImageVersionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-resourcespec.html#cfn-sagemaker-userprofile-resourcespec-sagemakerimageversionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.ResourceSpec.SageMakerImageVersionArn"
          }
        }
      }
    },
    "AWS::SageMaker::UserProfile.SharingSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-sharingsettings.html",
      "Properties": {
        "NotebookOutputOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-sharingsettings.html#cfn-sagemaker-userprofile-sharingsettings-notebookoutputoption",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.SharingSettings.NotebookOutputOption"
          }
        },
        "S3KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-sharingsettings.html#cfn-sagemaker-userprofile-sharingsettings-s3kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.SharingSettings.S3KmsKeyId"
          }
        },
        "S3OutputPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-sharingsettings.html#cfn-sagemaker-userprofile-sharingsettings-s3outputpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.SharingSettings.S3OutputPath"
          }
        }
      }
    },
    "AWS::SageMaker::UserProfile.UserSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html",
      "Properties": {
        "ExecutionRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-executionrole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.UserSettings.ExecutionRole"
          }
        },
        "JupyterServerAppSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-jupyterserverappsettings",
          "Required": false,
          "Type": "JupyterServerAppSettings",
          "UpdateType": "Mutable"
        },
        "KernelGatewayAppSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-kernelgatewayappsettings",
          "Required": false,
          "Type": "KernelGatewayAppSettings",
          "UpdateType": "Mutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-securitygroups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.UserSettings.SecurityGroups"
          }
        },
        "SharingSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-sharingsettings",
          "Required": false,
          "Type": "SharingSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SecretsManager::RotationSchedule.HostedRotationLambda": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html",
      "Properties": {
        "KmsKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-kmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterSecretArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-mastersecretarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterSecretKmsKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-mastersecretkmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RotationLambdaName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-rotationlambdaname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RotationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-rotationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-vpcsecuritygroupids",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcSubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-vpcsubnetids",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SecretsManager::RotationSchedule.RotationRules": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html",
      "Properties": {
        "AutomaticallyAfterDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html#cfn-secretsmanager-rotationschedule-rotationrules-automaticallyafterdays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SecretsManager::Secret.GenerateSecretString": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html",
      "Properties": {
        "ExcludeCharacters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludecharacters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExcludeLowercase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludelowercase",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExcludeNumbers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludenumbers",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExcludePunctuation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludepunctuation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExcludeUppercase": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludeuppercase",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GenerateStringKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-generatestringkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IncludeSpace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-includespace",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PasswordLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-passwordlength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequireEachIncludedType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-requireeachincludedtype",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretStringTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-secretstringtemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SecretsManager::Secret.ReplicaRegion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-replicaregion.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-replicaregion.html#cfn-secretsmanager-secret-replicaregion-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-replicaregion.html#cfn-secretsmanager-secret-replicaregion-region",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::CloudFormationProduct.ProvisioningArtifactProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisableTemplateValidation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-disabletemplatevalidation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Info": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-info",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html",
      "Properties": {
        "StackSetAccounts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetaccounts",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetAccounts"
          }
        },
        "StackSetFailureToleranceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetfailuretolerancecount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StackSetFailureTolerancePercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetfailuretolerancepercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StackSetMaxConcurrencyCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetmaxconcurrencycount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StackSetMaxConcurrencyPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetmaxconcurrencypercentage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetMaxConcurrencyPercentage"
          }
        },
        "StackSetOperationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetoperationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetOperationType"
          }
        },
        "StackSetRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetregions",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetRegions"
          }
        }
      }
    },
    "AWS::ServiceCatalog::ServiceAction.DefinitionParameter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-serviceaction-definitionparameter.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-serviceaction-definitionparameter.html#cfn-servicecatalog-serviceaction-definitionparameter-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::ServiceAction.DefinitionParameter.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-serviceaction-definitionparameter.html#cfn-servicecatalog-serviceaction-definitionparameter-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalogAppRegistry::AttributeGroup.Attributes": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalogappregistry-attributegroup-attributes.html"
    },
    "AWS::ServiceDiscovery::Service.DnsConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html",
      "Properties": {
        "DnsRecords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-dnsrecords",
          "ItemType": "DnsRecord",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NamespaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-namespaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RoutingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-routingpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceDiscovery::Service.DnsRecord": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html",
      "Properties": {
        "TTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-ttl",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "ServiceDiscoveryDnsType"
          }
        }
      }
    },
    "AWS::ServiceDiscovery::Service.HealthCheckConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html",
      "Properties": {
        "FailureThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-failurethreshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourcePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-resourcepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "ServiceDiscoveryHealthCheckConfigType"
          }
        }
      }
    },
    "AWS::ServiceDiscovery::Service.HealthCheckCustomConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html",
      "Properties": {
        "FailureThreshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html#cfn-servicediscovery-service-healthcheckcustomconfig-failurethreshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Signer::SigningProfile.SignatureValidityPeriod": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-signer-signingprofile-signaturevalidityperiod.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-signer-signingprofile-signaturevalidityperiod.html#cfn-signer-signingprofile-signaturevalidityperiod-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Signer::SigningProfile.SignatureValidityPeriod.Type"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-signer-signingprofile-signaturevalidityperiod.html#cfn-signer-signingprofile-signaturevalidityperiod-value",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::StepFunctions::Activity.TagsEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::StepFunctions::StateMachine.CloudWatchLogsLogGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-cloudwatchlogsloggroup.html",
      "Properties": {
        "LogGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-cloudwatchlogsloggroup.html#cfn-stepfunctions-statemachine-cloudwatchlogsloggroup-loggrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.CloudWatchLogsLogGroup.LogGroupArn"
          }
        }
      }
    },
    "AWS::StepFunctions::StateMachine.Definition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-definition.html"
    },
    "AWS::StepFunctions::StateMachine.LogDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-logdestination.html",
      "Properties": {
        "CloudWatchLogsLogGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-logdestination.html#cfn-stepfunctions-statemachine-logdestination-cloudwatchlogsloggroup",
          "Required": false,
          "Type": "CloudWatchLogsLogGroup",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::StepFunctions::StateMachine.LoggingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-loggingconfiguration.html",
      "Properties": {
        "Destinations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-loggingconfiguration.html#cfn-stepfunctions-statemachine-loggingconfiguration-destinations",
          "ItemType": "LogDestination",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "IncludeExecutionData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-loggingconfiguration.html#cfn-stepfunctions-statemachine-loggingconfiguration-includeexecutiondata",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Level": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-loggingconfiguration.html#cfn-stepfunctions-statemachine-loggingconfiguration-level",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.LoggingConfiguration.Level"
          }
        }
      }
    },
    "AWS::StepFunctions::StateMachine.S3Location": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-s3location.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-s3location.html#cfn-stepfunctions-statemachine-s3location-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-s3location.html#cfn-stepfunctions-statemachine-s3location-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-s3location.html#cfn-stepfunctions-statemachine-s3location-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::StepFunctions::StateMachine.TagsEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.TagsEntry.Key"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.TagsEntry.Value"
          }
        }
      }
    },
    "AWS::StepFunctions::StateMachine.TracingConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tracingconfiguration.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tracingconfiguration.html#cfn-stepfunctions-statemachine-tracingconfiguration-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Synthetics::Canary.Code": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html",
      "Properties": {
        "Handler": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-handler",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-s3bucket",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-s3key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-s3objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Script": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-script",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Synthetics::Canary.RunConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-runconfig.html",
      "Properties": {
        "ActiveTracing": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-runconfig.html#cfn-synthetics-canary-runconfig-activetracing",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnvironmentVariables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-runconfig.html#cfn-synthetics-canary-runconfig-environmentvariables",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "MemoryInMB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-runconfig.html#cfn-synthetics-canary-runconfig-memoryinmb",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeoutInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-runconfig.html#cfn-synthetics-canary-runconfig-timeoutinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Synthetics::Canary.Schedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-schedule.html",
      "Properties": {
        "DurationInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-schedule.html#cfn-synthetics-canary-schedule-durationinseconds",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Expression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-schedule.html#cfn-synthetics-canary-schedule-expression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Synthetics::Canary.VPCConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-vpcconfig.html",
      "Properties": {
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-vpcconfig.html#cfn-synthetics-canary-vpcconfig-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-vpcconfig.html#cfn-synthetics-canary-vpcconfig-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-vpcconfig.html#cfn-synthetics-canary-vpcconfig-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Transfer::Server.EndpointDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html",
      "Properties": {
        "AddressAllocationIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-addressallocationids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcEndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-vpcendpointid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Transfer::Server.IdentityProviderDetails": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html",
      "Properties": {
        "InvocationRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-invocationrole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-url",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Transfer::Server.Protocol": {
      "PrimitiveType": "String"
    },
    "AWS::Transfer::User.HomeDirectoryMapEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-homedirectorymapentry.html",
      "Properties": {
        "Entry": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-homedirectorymapentry.html#cfn-transfer-user-homedirectorymapentry-entry",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-homedirectorymapentry.html#cfn-transfer-user-homedirectorymapentry-target",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Transfer::User.PosixProfile": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-posixprofile.html",
      "Properties": {
        "Gid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-posixprofile.html#cfn-transfer-user-posixprofile-gid",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecondaryGids": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-posixprofile.html#cfn-transfer-user-posixprofile-secondarygids",
          "PrimitiveItemType": "Double",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Uid": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-posixprofile.html#cfn-transfer-user-posixprofile-uid",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Transfer::User.SshPublicKey": {
      "PrimitiveType": "String"
    },
    "AWS::WAF::ByteMatchSet.ByteMatchTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "PositionalConstraint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-positionalconstraint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-targetstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetStringBase64": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-targetstringbase64",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::ByteMatchSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::IPSet.IPSetDescriptor": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html#cfn-waf-ipset-ipsetdescriptors-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html#cfn-waf-ipset-ipsetdescriptors-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::Rule.Predicate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html",
      "Properties": {
        "DataId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-dataid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Negated": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-negated",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "PredicateType"
          }
        }
      }
    },
    "AWS::WAF::SizeConstraintSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::SizeConstraintSet.SizeConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-size",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::SqlInjectionMatchSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::SqlInjectionMatchSet.SqlInjectionMatchTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::WebACL.ActivatedRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-action",
          "Required": false,
          "Type": "WafAction",
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RuleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-ruleid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::WebACL.WafAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html#cfn-waf-webacl-action-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::XssMatchSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::XssMatchSet.XssMatchTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::ByteMatchSet.ByteMatchTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "PositionalConstraint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-positionalconstraint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-targetstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetStringBase64": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-targetstringbase64",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::ByteMatchSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::GeoMatchSet.GeoMatchConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::IPSet.IPSetDescriptor": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::RateBasedRule.Predicate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html",
      "Properties": {
        "DataId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html#cfn-wafregional-ratebasedrule-predicate-dataid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Negated": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html#cfn-wafregional-ratebasedrule-predicate-negated",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html#cfn-wafregional-ratebasedrule-predicate-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::Rule.Predicate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html",
      "Properties": {
        "DataId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-dataid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Negated": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-negated",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "PredicateType"
          }
        }
      }
    },
    "AWS::WAFRegional::SizeConstraintSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::SizeConstraintSet.SizeConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-size",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::SqlInjectionMatchSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::SqlInjectionMatchSet.SqlInjectionMatchTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::WebACL.Action": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html",
      "Properties": {
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html#cfn-wafregional-webacl-action-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::WebACL.Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-action",
          "Required": true,
          "Type": "Action",
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RuleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-ruleid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::XssMatchSet.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html",
      "Properties": {
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::XssMatchSet.XssMatchTuple": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-texttransformation",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.AndStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-andstatementone.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-andstatementone.html#cfn-wafv2-rulegroup-andstatementone-statements",
          "ItemType": "StatementTwo",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.AndStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-andstatementtwo.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-andstatementtwo.html#cfn-wafv2-rulegroup-andstatementtwo-statements",
          "ItemType": "StatementThree",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.ByteMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-bytematchstatement.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-bytematchstatement.html#cfn-wafv2-rulegroup-bytematchstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "PositionalConstraint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-bytematchstatement.html#cfn-wafv2-rulegroup-bytematchstatement-positionalconstraint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.ByteMatchStatement.PositionalConstraint"
          }
        },
        "SearchString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-bytematchstatement.html#cfn-wafv2-rulegroup-bytematchstatement-searchstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SearchStringBase64": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-bytematchstatement.html#cfn-wafv2-rulegroup-bytematchstatement-searchstringbase64",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-bytematchstatement.html#cfn-wafv2-rulegroup-bytematchstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html",
      "Properties": {
        "AllQueryArguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-allqueryarguments",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Body": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-body",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Method": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-method",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "QueryString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-querystring",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SingleHeader": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-singleheader",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SingleQueryArgument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-singlequeryargument",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UriPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-uripath",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.ForwardedIPConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-forwardedipconfiguration.html",
      "Properties": {
        "FallbackBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-forwardedipconfiguration.html#cfn-wafv2-rulegroup-forwardedipconfiguration-fallbackbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.ForwardedIPConfiguration.FallbackBehavior"
          }
        },
        "HeaderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-forwardedipconfiguration.html#cfn-wafv2-rulegroup-forwardedipconfiguration-headername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.GeoMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-geomatchstatement.html",
      "Properties": {
        "CountryCodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-geomatchstatement.html#cfn-wafv2-rulegroup-geomatchstatement-countrycodes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.GeoMatchStatement.CountryCodes"
          }
        },
        "ForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-geomatchstatement.html#cfn-wafv2-rulegroup-geomatchstatement-forwardedipconfig",
          "Required": false,
          "Type": "ForwardedIPConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.IPSetForwardedIPConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html",
      "Properties": {
        "FallbackBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html#cfn-wafv2-rulegroup-ipsetforwardedipconfiguration-fallbackbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.IPSetForwardedIPConfiguration.FallbackBehavior"
          }
        },
        "HeaderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html#cfn-wafv2-rulegroup-ipsetforwardedipconfiguration-headername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Position": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html#cfn-wafv2-rulegroup-ipsetforwardedipconfiguration-position",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.IPSetForwardedIPConfiguration.Position"
          }
        }
      }
    },
    "AWS::WAFv2::RuleGroup.IPSetReferenceStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetreferencestatement.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetreferencestatement.html#cfn-wafv2-rulegroup-ipsetreferencestatement-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.IPSetReferenceStatement.Arn"
          }
        },
        "IPSetForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetreferencestatement.html#cfn-wafv2-rulegroup-ipsetreferencestatement-ipsetforwardedipconfig",
          "Required": false,
          "Type": "IPSetForwardedIPConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.NotStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-notstatementone.html",
      "Properties": {
        "Statement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-notstatementone.html#cfn-wafv2-rulegroup-notstatementone-statement",
          "Required": true,
          "Type": "StatementTwo",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.NotStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-notstatementtwo.html",
      "Properties": {
        "Statement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-notstatementtwo.html#cfn-wafv2-rulegroup-notstatementtwo-statement",
          "Required": true,
          "Type": "StatementThree",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.OrStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-orstatementone.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-orstatementone.html#cfn-wafv2-rulegroup-orstatementone-statements",
          "ItemType": "StatementTwo",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.OrStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-orstatementtwo.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-orstatementtwo.html#cfn-wafv2-rulegroup-orstatementtwo-statements",
          "ItemType": "StatementThree",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.RateBasedStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html",
      "Properties": {
        "AggregateKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html#cfn-wafv2-rulegroup-ratebasedstatementone-aggregatekeytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.RateBasedStatementOne.AggregateKeyType"
          }
        },
        "ForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html#cfn-wafv2-rulegroup-ratebasedstatementone-forwardedipconfig",
          "Required": false,
          "Type": "ForwardedIPConfiguration",
          "UpdateType": "Mutable"
        },
        "Limit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html#cfn-wafv2-rulegroup-ratebasedstatementone-limit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.RateBasedStatementOne.Limit"
          }
        },
        "ScopeDownStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html#cfn-wafv2-rulegroup-ratebasedstatementone-scopedownstatement",
          "Required": false,
          "Type": "StatementTwo",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.RateBasedStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html",
      "Properties": {
        "AggregateKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html#cfn-wafv2-rulegroup-ratebasedstatementtwo-aggregatekeytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.RateBasedStatementTwo.AggregateKeyType"
          }
        },
        "ForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html#cfn-wafv2-rulegroup-ratebasedstatementtwo-forwardedipconfig",
          "Required": false,
          "Type": "ForwardedIPConfiguration",
          "UpdateType": "Mutable"
        },
        "Limit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html#cfn-wafv2-rulegroup-ratebasedstatementtwo-limit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.RateBasedStatementTwo.Limit"
          }
        },
        "ScopeDownStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html#cfn-wafv2-rulegroup-ratebasedstatementtwo-scopedownstatement",
          "Required": false,
          "Type": "StatementThree",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.RegexPatternSetReferenceStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-regexpatternsetreferencestatement.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-regexpatternsetreferencestatement.html#cfn-wafv2-rulegroup-regexpatternsetreferencestatement-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.RegexPatternSetReferenceStatement.Arn"
          }
        },
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-regexpatternsetreferencestatement.html#cfn-wafv2-rulegroup-regexpatternsetreferencestatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-regexpatternsetreferencestatement.html#cfn-wafv2-rulegroup-regexpatternsetreferencestatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-rule.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-rule.html#cfn-wafv2-rulegroup-rule-action",
          "Required": false,
          "Type": "RuleAction",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-rule.html#cfn-wafv2-rulegroup-rule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.Rule.Name"
          }
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-rule.html#cfn-wafv2-rulegroup-rule-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-rule.html#cfn-wafv2-rulegroup-rule-statement",
          "Required": true,
          "Type": "StatementOne",
          "UpdateType": "Mutable"
        },
        "VisibilityConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-rule.html#cfn-wafv2-rulegroup-rule-visibilityconfig",
          "Required": true,
          "Type": "VisibilityConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.RuleAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ruleaction.html",
      "Properties": {
        "Allow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ruleaction.html#cfn-wafv2-rulegroup-ruleaction-allow",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Block": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ruleaction.html#cfn-wafv2-rulegroup-ruleaction-block",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ruleaction.html#cfn-wafv2-rulegroup-ruleaction-count",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.SizeConstraintStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sizeconstraintstatement.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sizeconstraintstatement.html#cfn-wafv2-rulegroup-sizeconstraintstatement-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.SizeConstraintStatement.ComparisonOperator"
          }
        },
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sizeconstraintstatement.html#cfn-wafv2-rulegroup-sizeconstraintstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sizeconstraintstatement.html#cfn-wafv2-rulegroup-sizeconstraintstatement-size",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sizeconstraintstatement.html#cfn-wafv2-rulegroup-sizeconstraintstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.SqliMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sqlimatchstatement.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sqlimatchstatement.html#cfn-wafv2-rulegroup-sqlimatchstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sqlimatchstatement.html#cfn-wafv2-rulegroup-sqlimatchstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.StatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html",
      "Properties": {
        "AndStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-andstatement",
          "Required": false,
          "Type": "AndStatementOne",
          "UpdateType": "Mutable"
        },
        "ByteMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-bytematchstatement",
          "Required": false,
          "Type": "ByteMatchStatement",
          "UpdateType": "Mutable"
        },
        "GeoMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-geomatchstatement",
          "Required": false,
          "Type": "GeoMatchStatement",
          "UpdateType": "Mutable"
        },
        "IPSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-ipsetreferencestatement",
          "Required": false,
          "Type": "IPSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "NotStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-notstatement",
          "Required": false,
          "Type": "NotStatementOne",
          "UpdateType": "Mutable"
        },
        "OrStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-orstatement",
          "Required": false,
          "Type": "OrStatementOne",
          "UpdateType": "Mutable"
        },
        "RateBasedStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-ratebasedstatement",
          "Required": false,
          "Type": "RateBasedStatementOne",
          "UpdateType": "Mutable"
        },
        "RegexPatternSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-regexpatternsetreferencestatement",
          "Required": false,
          "Type": "RegexPatternSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "SizeConstraintStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-sizeconstraintstatement",
          "Required": false,
          "Type": "SizeConstraintStatement",
          "UpdateType": "Mutable"
        },
        "SqliMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-sqlimatchstatement",
          "Required": false,
          "Type": "SqliMatchStatement",
          "UpdateType": "Mutable"
        },
        "XssMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementone.html#cfn-wafv2-rulegroup-statementone-xssmatchstatement",
          "Required": false,
          "Type": "XssMatchStatement",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.StatementThree": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html",
      "Properties": {
        "ByteMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html#cfn-wafv2-rulegroup-statementthree-bytematchstatement",
          "Required": false,
          "Type": "ByteMatchStatement",
          "UpdateType": "Mutable"
        },
        "GeoMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html#cfn-wafv2-rulegroup-statementthree-geomatchstatement",
          "Required": false,
          "Type": "GeoMatchStatement",
          "UpdateType": "Mutable"
        },
        "IPSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html#cfn-wafv2-rulegroup-statementthree-ipsetreferencestatement",
          "Required": false,
          "Type": "IPSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "RegexPatternSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html#cfn-wafv2-rulegroup-statementthree-regexpatternsetreferencestatement",
          "Required": false,
          "Type": "RegexPatternSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "SizeConstraintStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html#cfn-wafv2-rulegroup-statementthree-sizeconstraintstatement",
          "Required": false,
          "Type": "SizeConstraintStatement",
          "UpdateType": "Mutable"
        },
        "SqliMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html#cfn-wafv2-rulegroup-statementthree-sqlimatchstatement",
          "Required": false,
          "Type": "SqliMatchStatement",
          "UpdateType": "Mutable"
        },
        "XssMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementthree.html#cfn-wafv2-rulegroup-statementthree-xssmatchstatement",
          "Required": false,
          "Type": "XssMatchStatement",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.StatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html",
      "Properties": {
        "AndStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-andstatement",
          "Required": false,
          "Type": "AndStatementTwo",
          "UpdateType": "Mutable"
        },
        "ByteMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-bytematchstatement",
          "Required": false,
          "Type": "ByteMatchStatement",
          "UpdateType": "Mutable"
        },
        "GeoMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-geomatchstatement",
          "Required": false,
          "Type": "GeoMatchStatement",
          "UpdateType": "Mutable"
        },
        "IPSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-ipsetreferencestatement",
          "Required": false,
          "Type": "IPSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "NotStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-notstatement",
          "Required": false,
          "Type": "NotStatementTwo",
          "UpdateType": "Mutable"
        },
        "OrStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-orstatement",
          "Required": false,
          "Type": "OrStatementTwo",
          "UpdateType": "Mutable"
        },
        "RateBasedStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-ratebasedstatement",
          "Required": false,
          "Type": "RateBasedStatementTwo",
          "UpdateType": "Mutable"
        },
        "RegexPatternSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-regexpatternsetreferencestatement",
          "Required": false,
          "Type": "RegexPatternSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "SizeConstraintStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-sizeconstraintstatement",
          "Required": false,
          "Type": "SizeConstraintStatement",
          "UpdateType": "Mutable"
        },
        "SqliMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-sqlimatchstatement",
          "Required": false,
          "Type": "SqliMatchStatement",
          "UpdateType": "Mutable"
        },
        "XssMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-statementtwo.html#cfn-wafv2-rulegroup-statementtwo-xssmatchstatement",
          "Required": false,
          "Type": "XssMatchStatement",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.TextTransformation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-texttransformation.html",
      "Properties": {
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-texttransformation.html#cfn-wafv2-rulegroup-texttransformation-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-texttransformation.html#cfn-wafv2-rulegroup-texttransformation-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.TextTransformation.Type"
          }
        }
      }
    },
    "AWS::WAFv2::RuleGroup.VisibilityConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-visibilityconfig.html",
      "Properties": {
        "CloudWatchMetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-visibilityconfig.html#cfn-wafv2-rulegroup-visibilityconfig-cloudwatchmetricsenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-visibilityconfig.html#cfn-wafv2-rulegroup-visibilityconfig-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.VisibilityConfig.MetricName"
          }
        },
        "SampledRequestsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-visibilityconfig.html#cfn-wafv2-rulegroup-visibilityconfig-sampledrequestsenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup.XssMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-xssmatchstatement.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-xssmatchstatement.html#cfn-wafv2-rulegroup-xssmatchstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-xssmatchstatement.html#cfn-wafv2-rulegroup-xssmatchstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.AndStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-andstatementone.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-andstatementone.html#cfn-wafv2-webacl-andstatementone-statements",
          "ItemType": "StatementTwo",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.AndStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-andstatementtwo.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-andstatementtwo.html#cfn-wafv2-webacl-andstatementtwo-statements",
          "ItemType": "StatementThree",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.ByteMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-bytematchstatement.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-bytematchstatement.html#cfn-wafv2-webacl-bytematchstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "PositionalConstraint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-bytematchstatement.html#cfn-wafv2-webacl-bytematchstatement-positionalconstraint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.ByteMatchStatement.PositionalConstraint"
          }
        },
        "SearchString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-bytematchstatement.html#cfn-wafv2-webacl-bytematchstatement-searchstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SearchStringBase64": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-bytematchstatement.html#cfn-wafv2-webacl-bytematchstatement-searchstringbase64",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-bytematchstatement.html#cfn-wafv2-webacl-bytematchstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.DefaultAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-defaultaction.html",
      "Properties": {
        "Allow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-defaultaction.html#cfn-wafv2-webacl-defaultaction-allow",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Block": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-defaultaction.html#cfn-wafv2-webacl-defaultaction-block",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.ExcludedRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-excludedrule.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-excludedrule.html#cfn-wafv2-webacl-excludedrule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.ExcludedRule.Name"
          }
        }
      }
    },
    "AWS::WAFv2::WebACL.FieldToMatch": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html",
      "Properties": {
        "AllQueryArguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-allqueryarguments",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Body": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-body",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Method": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-method",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "QueryString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-querystring",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SingleHeader": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-singleheader",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SingleQueryArgument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-singlequeryargument",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UriPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-uripath",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.ForwardedIPConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-forwardedipconfiguration.html",
      "Properties": {
        "FallbackBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-forwardedipconfiguration.html#cfn-wafv2-webacl-forwardedipconfiguration-fallbackbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.ForwardedIPConfiguration.FallbackBehavior"
          }
        },
        "HeaderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-forwardedipconfiguration.html#cfn-wafv2-webacl-forwardedipconfiguration-headername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.GeoMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-geomatchstatement.html",
      "Properties": {
        "CountryCodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-geomatchstatement.html#cfn-wafv2-webacl-geomatchstatement-countrycodes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.GeoMatchStatement.CountryCodes"
          }
        },
        "ForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-geomatchstatement.html#cfn-wafv2-webacl-geomatchstatement-forwardedipconfig",
          "Required": false,
          "Type": "ForwardedIPConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.IPSetForwardedIPConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html",
      "Properties": {
        "FallbackBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html#cfn-wafv2-webacl-ipsetforwardedipconfiguration-fallbackbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.IPSetForwardedIPConfiguration.FallbackBehavior"
          }
        },
        "HeaderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html#cfn-wafv2-webacl-ipsetforwardedipconfiguration-headername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Position": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html#cfn-wafv2-webacl-ipsetforwardedipconfiguration-position",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.IPSetForwardedIPConfiguration.Position"
          }
        }
      }
    },
    "AWS::WAFv2::WebACL.IPSetReferenceStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetreferencestatement.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetreferencestatement.html#cfn-wafv2-webacl-ipsetreferencestatement-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.IPSetReferenceStatement.Arn"
          }
        },
        "IPSetForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetreferencestatement.html#cfn-wafv2-webacl-ipsetreferencestatement-ipsetforwardedipconfig",
          "Required": false,
          "Type": "IPSetForwardedIPConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.ManagedRuleGroupStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupstatement.html",
      "Properties": {
        "ExcludedRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupstatement.html#cfn-wafv2-webacl-managedrulegroupstatement-excludedrules",
          "ItemType": "ExcludedRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupstatement.html#cfn-wafv2-webacl-managedrulegroupstatement-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.ManagedRuleGroupStatement.Name"
          }
        },
        "VendorName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupstatement.html#cfn-wafv2-webacl-managedrulegroupstatement-vendorname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.NotStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-notstatementone.html",
      "Properties": {
        "Statement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-notstatementone.html#cfn-wafv2-webacl-notstatementone-statement",
          "Required": true,
          "Type": "StatementTwo",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.NotStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-notstatementtwo.html",
      "Properties": {
        "Statement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-notstatementtwo.html#cfn-wafv2-webacl-notstatementtwo-statement",
          "Required": true,
          "Type": "StatementThree",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.OrStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-orstatementone.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-orstatementone.html#cfn-wafv2-webacl-orstatementone-statements",
          "ItemType": "StatementTwo",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.OrStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-orstatementtwo.html",
      "Properties": {
        "Statements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-orstatementtwo.html#cfn-wafv2-webacl-orstatementtwo-statements",
          "ItemType": "StatementThree",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.OverrideAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-overrideaction.html",
      "Properties": {
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-overrideaction.html#cfn-wafv2-webacl-overrideaction-count",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "None": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-overrideaction.html#cfn-wafv2-webacl-overrideaction-none",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.RateBasedStatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html",
      "Properties": {
        "AggregateKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html#cfn-wafv2-webacl-ratebasedstatementone-aggregatekeytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.RateBasedStatementOne.AggregateKeyType"
          }
        },
        "ForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html#cfn-wafv2-webacl-ratebasedstatementone-forwardedipconfig",
          "Required": false,
          "Type": "ForwardedIPConfiguration",
          "UpdateType": "Mutable"
        },
        "Limit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html#cfn-wafv2-webacl-ratebasedstatementone-limit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.RateBasedStatementOne.Limit"
          }
        },
        "ScopeDownStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html#cfn-wafv2-webacl-ratebasedstatementone-scopedownstatement",
          "Required": false,
          "Type": "StatementTwo",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.RateBasedStatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html",
      "Properties": {
        "AggregateKeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html#cfn-wafv2-webacl-ratebasedstatementtwo-aggregatekeytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.RateBasedStatementTwo.AggregateKeyType"
          }
        },
        "ForwardedIPConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html#cfn-wafv2-webacl-ratebasedstatementtwo-forwardedipconfig",
          "Required": false,
          "Type": "ForwardedIPConfiguration",
          "UpdateType": "Mutable"
        },
        "Limit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html#cfn-wafv2-webacl-ratebasedstatementtwo-limit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.RateBasedStatementTwo.Limit"
          }
        },
        "ScopeDownStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html#cfn-wafv2-webacl-ratebasedstatementtwo-scopedownstatement",
          "Required": false,
          "Type": "StatementThree",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.RegexPatternSetReferenceStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-regexpatternsetreferencestatement.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-regexpatternsetreferencestatement.html#cfn-wafv2-webacl-regexpatternsetreferencestatement-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.RegexPatternSetReferenceStatement.Arn"
          }
        },
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-regexpatternsetreferencestatement.html#cfn-wafv2-webacl-regexpatternsetreferencestatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-regexpatternsetreferencestatement.html#cfn-wafv2-webacl-regexpatternsetreferencestatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rule.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rule.html#cfn-wafv2-webacl-rule-action",
          "Required": false,
          "Type": "RuleAction",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rule.html#cfn-wafv2-webacl-rule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.Rule.Name"
          }
        },
        "OverrideAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rule.html#cfn-wafv2-webacl-rule-overrideaction",
          "Required": false,
          "Type": "OverrideAction",
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rule.html#cfn-wafv2-webacl-rule-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Statement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rule.html#cfn-wafv2-webacl-rule-statement",
          "Required": true,
          "Type": "StatementOne",
          "UpdateType": "Mutable"
        },
        "VisibilityConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rule.html#cfn-wafv2-webacl-rule-visibilityconfig",
          "Required": true,
          "Type": "VisibilityConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.RuleAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ruleaction.html",
      "Properties": {
        "Allow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ruleaction.html#cfn-wafv2-webacl-ruleaction-allow",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Block": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ruleaction.html#cfn-wafv2-webacl-ruleaction-block",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ruleaction.html#cfn-wafv2-webacl-ruleaction-count",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.RuleGroupReferenceStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rulegroupreferencestatement.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rulegroupreferencestatement.html#cfn-wafv2-webacl-rulegroupreferencestatement-arn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.RuleGroupReferenceStatement.Arn"
          }
        },
        "ExcludedRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-rulegroupreferencestatement.html#cfn-wafv2-webacl-rulegroupreferencestatement-excludedrules",
          "ItemType": "ExcludedRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.SizeConstraintStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sizeconstraintstatement.html",
      "Properties": {
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sizeconstraintstatement.html#cfn-wafv2-webacl-sizeconstraintstatement-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.SizeConstraintStatement.ComparisonOperator"
          }
        },
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sizeconstraintstatement.html#cfn-wafv2-webacl-sizeconstraintstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sizeconstraintstatement.html#cfn-wafv2-webacl-sizeconstraintstatement-size",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sizeconstraintstatement.html#cfn-wafv2-webacl-sizeconstraintstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.SqliMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sqlimatchstatement.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sqlimatchstatement.html#cfn-wafv2-webacl-sqlimatchstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-sqlimatchstatement.html#cfn-wafv2-webacl-sqlimatchstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.StatementOne": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html",
      "Properties": {
        "AndStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-andstatement",
          "Required": false,
          "Type": "AndStatementOne",
          "UpdateType": "Mutable"
        },
        "ByteMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-bytematchstatement",
          "Required": false,
          "Type": "ByteMatchStatement",
          "UpdateType": "Mutable"
        },
        "GeoMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-geomatchstatement",
          "Required": false,
          "Type": "GeoMatchStatement",
          "UpdateType": "Mutable"
        },
        "IPSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-ipsetreferencestatement",
          "Required": false,
          "Type": "IPSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "ManagedRuleGroupStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-managedrulegroupstatement",
          "Required": false,
          "Type": "ManagedRuleGroupStatement",
          "UpdateType": "Mutable"
        },
        "NotStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-notstatement",
          "Required": false,
          "Type": "NotStatementOne",
          "UpdateType": "Mutable"
        },
        "OrStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-orstatement",
          "Required": false,
          "Type": "OrStatementOne",
          "UpdateType": "Mutable"
        },
        "RateBasedStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-ratebasedstatement",
          "Required": false,
          "Type": "RateBasedStatementOne",
          "UpdateType": "Mutable"
        },
        "RegexPatternSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-regexpatternsetreferencestatement",
          "Required": false,
          "Type": "RegexPatternSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "RuleGroupReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-rulegroupreferencestatement",
          "Required": false,
          "Type": "RuleGroupReferenceStatement",
          "UpdateType": "Mutable"
        },
        "SizeConstraintStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-sizeconstraintstatement",
          "Required": false,
          "Type": "SizeConstraintStatement",
          "UpdateType": "Mutable"
        },
        "SqliMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-sqlimatchstatement",
          "Required": false,
          "Type": "SqliMatchStatement",
          "UpdateType": "Mutable"
        },
        "XssMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementone.html#cfn-wafv2-webacl-statementone-xssmatchstatement",
          "Required": false,
          "Type": "XssMatchStatement",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.StatementThree": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html",
      "Properties": {
        "ByteMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-bytematchstatement",
          "Required": false,
          "Type": "ByteMatchStatement",
          "UpdateType": "Mutable"
        },
        "GeoMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-geomatchstatement",
          "Required": false,
          "Type": "GeoMatchStatement",
          "UpdateType": "Mutable"
        },
        "IPSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-ipsetreferencestatement",
          "Required": false,
          "Type": "IPSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "ManagedRuleGroupStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-managedrulegroupstatement",
          "Required": false,
          "Type": "ManagedRuleGroupStatement",
          "UpdateType": "Mutable"
        },
        "RegexPatternSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-regexpatternsetreferencestatement",
          "Required": false,
          "Type": "RegexPatternSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "RuleGroupReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-rulegroupreferencestatement",
          "Required": false,
          "Type": "RuleGroupReferenceStatement",
          "UpdateType": "Mutable"
        },
        "SizeConstraintStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-sizeconstraintstatement",
          "Required": false,
          "Type": "SizeConstraintStatement",
          "UpdateType": "Mutable"
        },
        "SqliMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-sqlimatchstatement",
          "Required": false,
          "Type": "SqliMatchStatement",
          "UpdateType": "Mutable"
        },
        "XssMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementthree.html#cfn-wafv2-webacl-statementthree-xssmatchstatement",
          "Required": false,
          "Type": "XssMatchStatement",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.StatementTwo": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html",
      "Properties": {
        "AndStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-andstatement",
          "Required": false,
          "Type": "AndStatementTwo",
          "UpdateType": "Mutable"
        },
        "ByteMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-bytematchstatement",
          "Required": false,
          "Type": "ByteMatchStatement",
          "UpdateType": "Mutable"
        },
        "GeoMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-geomatchstatement",
          "Required": false,
          "Type": "GeoMatchStatement",
          "UpdateType": "Mutable"
        },
        "IPSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-ipsetreferencestatement",
          "Required": false,
          "Type": "IPSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "ManagedRuleGroupStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-managedrulegroupstatement",
          "Required": false,
          "Type": "ManagedRuleGroupStatement",
          "UpdateType": "Mutable"
        },
        "NotStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-notstatement",
          "Required": false,
          "Type": "NotStatementTwo",
          "UpdateType": "Mutable"
        },
        "OrStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-orstatement",
          "Required": false,
          "Type": "OrStatementTwo",
          "UpdateType": "Mutable"
        },
        "RateBasedStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-ratebasedstatement",
          "Required": false,
          "Type": "RateBasedStatementTwo",
          "UpdateType": "Mutable"
        },
        "RegexPatternSetReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-regexpatternsetreferencestatement",
          "Required": false,
          "Type": "RegexPatternSetReferenceStatement",
          "UpdateType": "Mutable"
        },
        "RuleGroupReferenceStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-rulegroupreferencestatement",
          "Required": false,
          "Type": "RuleGroupReferenceStatement",
          "UpdateType": "Mutable"
        },
        "SizeConstraintStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-sizeconstraintstatement",
          "Required": false,
          "Type": "SizeConstraintStatement",
          "UpdateType": "Mutable"
        },
        "SqliMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-sqlimatchstatement",
          "Required": false,
          "Type": "SqliMatchStatement",
          "UpdateType": "Mutable"
        },
        "XssMatchStatement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statementtwo.html#cfn-wafv2-webacl-statementtwo-xssmatchstatement",
          "Required": false,
          "Type": "XssMatchStatement",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.TextTransformation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-texttransformation.html",
      "Properties": {
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-texttransformation.html#cfn-wafv2-webacl-texttransformation-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-texttransformation.html#cfn-wafv2-webacl-texttransformation-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.TextTransformation.Type"
          }
        }
      }
    },
    "AWS::WAFv2::WebACL.VisibilityConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-visibilityconfig.html",
      "Properties": {
        "CloudWatchMetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-visibilityconfig.html#cfn-wafv2-webacl-visibilityconfig-cloudwatchmetricsenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-visibilityconfig.html#cfn-wafv2-webacl-visibilityconfig-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.VisibilityConfig.MetricName"
          }
        },
        "SampledRequestsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-visibilityconfig.html#cfn-wafv2-webacl-visibilityconfig-sampledrequestsenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL.XssMatchStatement": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-xssmatchstatement.html",
      "Properties": {
        "FieldToMatch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-xssmatchstatement.html#cfn-wafv2-webacl-xssmatchstatement-fieldtomatch",
          "Required": true,
          "Type": "FieldToMatch",
          "UpdateType": "Mutable"
        },
        "TextTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-xssmatchstatement.html#cfn-wafv2-webacl-xssmatchstatement-texttransformations",
          "ItemType": "TextTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WorkSpaces::ConnectionAlias.ConnectionAliasAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html",
      "Properties": {
        "AssociatedAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-associatedaccountid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AssociationStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-associationstatus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WorkSpaces::ConnectionAlias.ConnectionAliasAssociation.AssociationStatus"
          }
        },
        "ConnectionIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-connectionidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WorkSpaces::ConnectionAlias.ConnectionAliasAssociation.ConnectionIdentifier"
          }
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WorkSpaces::ConnectionAlias.ConnectionAliasAssociation.ResourceId"
          }
        }
      }
    },
    "AWS::WorkSpaces::Workspace.WorkspaceProperties": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html",
      "Properties": {
        "ComputeTypeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-computetypename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WorkSpaces::Workspace.ComputeTypeName"
          }
        },
        "RootVolumeSizeGib": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-rootvolumesizegib",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RunningMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-runningmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WorkSpaces::Workspace.RunningMode"
          }
        },
        "RunningModeAutoStopTimeoutInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-runningmodeautostoptimeoutinminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserVolumeSizeGib": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-uservolumesizegib",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "Alexa::ASK::Skill.AuthenticationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html",
      "Properties": {
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html#cfn-ask-skill-authenticationconfiguration-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html#cfn-ask-skill-authenticationconfiguration-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RefreshToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html#cfn-ask-skill-authenticationconfiguration-refreshtoken",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "Alexa::ASK::Skill.Overrides": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html",
      "Properties": {
        "Manifest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html#cfn-ask-skill-overrides-manifest",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "Alexa::ASK::Skill.SkillPackage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html",
      "Properties": {
        "Overrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-overrides",
          "Required": false,
          "Type": "Overrides",
          "UpdateType": "Mutable"
        },
        "S3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3BucketRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3bucketrole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "Tag": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    }
  },
  "ResourceSpecificationVersion": "30.1.0",
  "ResourceTypes": {
    "AWS::ACMPCA::Certificate": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Certificate": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html",
      "Properties": {
        "ApiPassthrough": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html#cfn-acmpca-certificate-apipassthrough",
          "Required": false,
          "Type": "ApiPassthrough",
          "UpdateType": "Immutable"
        },
        "CertificateAuthorityArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html#cfn-acmpca-certificate-certificateauthorityarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CertificateSigningRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html#cfn-acmpca-certificate-certificatesigningrequest",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SigningAlgorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html#cfn-acmpca-certificate-signingalgorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TemplateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html#cfn-acmpca-certificate-templatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Validity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html#cfn-acmpca-certificate-validity",
          "Required": true,
          "Type": "Validity",
          "UpdateType": "Immutable"
        },
        "ValidityNotBefore": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html#cfn-acmpca-certificate-validitynotbefore",
          "Required": false,
          "Type": "Validity",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthority": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CertificateSigningRequest": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html",
      "Properties": {
        "CsrExtensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html#cfn-acmpca-certificateauthority-csrextensions",
          "Required": false,
          "Type": "CsrExtensions",
          "UpdateType": "Immutable"
        },
        "KeyAlgorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html#cfn-acmpca-certificateauthority-keyalgorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RevocationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html#cfn-acmpca-certificateauthority-revocationconfiguration",
          "Required": false,
          "Type": "RevocationConfiguration",
          "UpdateType": "Mutable"
        },
        "SigningAlgorithm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html#cfn-acmpca-certificateauthority-signingalgorithm",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Subject": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html#cfn-acmpca-certificateauthority-subject",
          "Required": true,
          "Type": "Subject",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html#cfn-acmpca-certificateauthority-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html#cfn-acmpca-certificateauthority-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ACMPCA::CertificateAuthorityActivation": {
      "Attributes": {
        "CompleteCertificateChain": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html#cfn-acmpca-certificateauthorityactivation-certificate",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "CertificateAuthorityArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html#cfn-acmpca-certificateauthorityactivation-certificateauthorityarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CertificateChain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html#cfn-acmpca-certificateauthorityactivation-certificatechain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html#cfn-acmpca-certificateauthorityactivation-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AccessAnalyzer::Analyzer": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html",
      "Properties": {
        "AnalyzerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html#cfn-accessanalyzer-analyzer-analyzername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AccessAnalyzer::Analyzer.AnalyzerName"
          }
        },
        "ArchiveRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html#cfn-accessanalyzer-analyzer-archiverules",
          "ItemType": "ArchiveRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html#cfn-accessanalyzer-analyzer-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html#cfn-accessanalyzer-analyzer-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AmazonMQ::Broker": {
      "Attributes": {
        "AmqpEndpoints": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "Arn": {
          "PrimitiveType": "String"
        },
        "ConfigurationId": {
          "PrimitiveType": "String"
        },
        "ConfigurationRevision": {
          "PrimitiveType": "Integer"
        },
        "IpAddresses": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "MqttEndpoints": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "OpenWireEndpoints": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "StompEndpoints": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "WssEndpoints": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html",
      "Properties": {
        "AuthenticationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-authenticationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AutoMinorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-autominorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "BrokerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-brokername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-configuration",
          "Required": false,
          "Type": "ConfigurationId",
          "UpdateType": "Mutable"
        },
        "DeploymentMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-deploymentmode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AmazonMQ::Broker.DeploymentMode"
          }
        },
        "EncryptionOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-encryptionoptions",
          "Required": false,
          "Type": "EncryptionOptions",
          "UpdateType": "Immutable"
        },
        "EngineType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-enginetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AmazonMQ::Broker.EngineType"
          }
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-engineversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AmazonMQ::Broker.EngineVersion"
          }
        },
        "HostInstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-hostinstancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AmazonMQ::Broker.HostInstanceType"
          }
        },
        "LdapServerMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-ldapservermetadata",
          "Required": false,
          "Type": "LdapServerMetadata",
          "UpdateType": "Mutable"
        },
        "Logs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-logs",
          "Required": false,
          "Type": "LogList",
          "UpdateType": "Mutable"
        },
        "MaintenanceWindowStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-maintenancewindowstarttime",
          "Required": false,
          "Type": "MaintenanceWindow",
          "UpdateType": "Immutable"
        },
        "PubliclyAccessible": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-publiclyaccessible",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-securitygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StorageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-storagetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-subnetids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-tags",
          "ItemType": "TagsEntry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Users": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-users",
          "ItemType": "User",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::Configuration": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "Revision": {
          "PrimitiveType": "Integer"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html",
      "Properties": {
        "AuthenticationStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-authenticationstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-data",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EngineType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-enginetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AmazonMQ::Broker.EngineType"
          }
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-engineversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AmazonMQ::Broker.EngineVersion"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-tags",
          "ItemType": "TagsEntry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AmazonMQ::ConfigurationAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html",
      "Properties": {
        "Broker": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html#cfn-amazonmq-configurationassociation-broker",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html#cfn-amazonmq-configurationassociation-configuration",
          "Required": true,
          "Type": "ConfigurationId",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::App": {
      "Attributes": {
        "AppId": {
          "PrimitiveType": "String"
        },
        "AppName": {
          "PrimitiveType": "String"
        },
        "Arn": {
          "PrimitiveType": "String"
        },
        "DefaultDomain": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html",
      "Properties": {
        "AccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-accesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AutoBranchCreationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-autobranchcreationconfig",
          "Required": false,
          "Type": "AutoBranchCreationConfig",
          "UpdateType": "Mutable"
        },
        "BasicAuthConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-basicauthconfig",
          "Required": false,
          "Type": "BasicAuthConfig",
          "UpdateType": "Mutable"
        },
        "BuildSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-buildspec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomHeaders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-customheaders",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-customrules",
          "ItemType": "CustomRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableBranchAutoDeletion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-enablebranchautodeletion",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnvironmentVariables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-environmentvariables",
          "ItemType": "EnvironmentVariable",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "IAMServiceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-iamservicerole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OauthToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-oauthtoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Repository": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-repository",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::Branch": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "BranchName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html",
      "Properties": {
        "AppId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-appid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "BasicAuthConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-basicauthconfig",
          "Required": false,
          "Type": "BasicAuthConfig",
          "UpdateType": "Mutable"
        },
        "BranchName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-branchname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "BuildSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-buildspec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableAutoBuild": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-enableautobuild",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnablePerformanceMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-enableperformancemode",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnablePullRequestPreview": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-enablepullrequestpreview",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnvironmentVariables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-environmentvariables",
          "ItemType": "EnvironmentVariable",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PullRequestEnvironmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-pullrequestenvironmentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Stage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-stage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Amplify::Domain": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "AutoSubDomainCreationPatterns": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "AutoSubDomainIAMRole": {
          "PrimitiveType": "String"
        },
        "CertificateRecord": {
          "PrimitiveType": "String"
        },
        "DomainName": {
          "PrimitiveType": "String"
        },
        "DomainStatus": {
          "PrimitiveType": "String"
        },
        "EnableAutoSubDomain": {
          "PrimitiveType": "Boolean"
        },
        "StatusReason": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html",
      "Properties": {
        "AppId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-appid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AutoSubDomainCreationPatterns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-autosubdomaincreationpatterns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AutoSubDomainIAMRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-autosubdomainiamrole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "EnableAutoSubDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-enableautosubdomain",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubDomainSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-subdomainsettings",
          "ItemType": "SubDomainSetting",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Account": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html",
      "Properties": {
        "CloudWatchRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html#cfn-apigateway-account-cloudwatchrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::ApiKey": {
      "Attributes": {
        "APIKeyId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html",
      "Properties": {
        "CustomerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-customerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GenerateDistinctId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-generatedistinctid",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StageKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-stagekeys",
          "DuplicatesAllowed": false,
          "ItemType": "StageKey",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-value",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ApiGateway::Authorizer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html",
      "Properties": {
        "AuthType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizerCredentials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizercredentials",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizerResultTtlInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizerresultttlinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApiGateway::Authorizer.AuthorizerResultTtlInSeconds"
          }
        },
        "AuthorizerUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizeruri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdentitySource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identitysource",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdentityValidationExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identityvalidationexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProviderARNs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-providerarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApiGateway::Authorizer.Type"
          }
        }
      }
    },
    "AWS::ApiGateway::BasePathMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html",
      "Properties": {
        "BasePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-restapiid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        },
        "Stage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-stage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::ClientCertificate": {
      "Attributes": {
        "ClientCertificateId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html#cfn-apigateway-clientcertificate-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html#cfn-apigateway-clientcertificate-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Deployment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html",
      "Properties": {
        "DeploymentCanarySettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-deploymentcanarysettings",
          "Required": false,
          "Type": "DeploymentCanarySettings",
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        },
        "StageDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagedescription",
          "Required": false,
          "Type": "StageDescription",
          "UpdateType": "Mutable"
        },
        "StageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::DocumentationPart": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html",
      "Properties": {
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-location",
          "Required": true,
          "Type": "Location",
          "UpdateType": "Immutable"
        },
        "Properties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-properties",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        }
      }
    },
    "AWS::ApiGateway::DocumentationVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DocumentationVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-documentationversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        }
      }
    },
    "AWS::ApiGateway::DomainName": {
      "Attributes": {
        "DistributionDomainName": {
          "PrimitiveType": "String"
        },
        "DistributionHostedZoneId": {
          "PrimitiveType": "String"
        },
        "RegionalDomainName": {
          "PrimitiveType": "String"
        },
        "RegionalHostedZoneId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-domainname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EndpointConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-endpointconfiguration",
          "Required": false,
          "Type": "EndpointConfiguration",
          "UpdateType": "Mutable"
        },
        "MutualTlsAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication",
          "Required": false,
          "Type": "MutualTlsAuthentication",
          "UpdateType": "Mutable"
        },
        "RegionalCertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-regionalcertificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-securitypolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::GatewayResponse": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html",
      "Properties": {
        "ResponseParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responseparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "ResponseTemplates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responsetemplates",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "ResponseType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responsetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ApiGateway::GatewayResponse.ResponseType"
          }
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        },
        "StatusCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-statuscode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Method": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html",
      "Properties": {
        "ApiKeyRequired": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-apikeyrequired",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizationScopes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationscopes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AuthorizationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-httpmethod",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Integration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-integration",
          "Required": false,
          "Type": "Integration",
          "UpdateType": "Mutable"
        },
        "MethodResponses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-methodresponses",
          "DuplicatesAllowed": false,
          "ItemType": "MethodResponse",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OperationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-operationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestModels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestmodels",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "RequestParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestparameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "Boolean",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "RequestValidatorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestvalidatorid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-resourceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        }
      }
    },
    "AWS::ApiGateway::Model": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html",
      "Properties": {
        "ContentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-contenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        },
        "Schema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-schema",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::RequestValidator": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        },
        "ValidateRequestBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-validaterequestbody",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ValidateRequestParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-validaterequestparameters",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Resource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html",
      "Properties": {
        "ParentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-parentid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PathPart": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-pathpart",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        }
      }
    },
    "AWS::ApiGateway::RestApi": {
      "Attributes": {
        "RootResourceId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html",
      "Properties": {
        "ApiKeySourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-apikeysourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApiGateway::RestApi.ApiKeySourceType"
          }
        },
        "BinaryMediaTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-binarymediatypes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Body": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BodyS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location",
          "Required": false,
          "Type": "S3Location",
          "UpdateType": "Mutable"
        },
        "CloneFrom": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-clonefrom",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndpointConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration",
          "Required": false,
          "Type": "EndpointConfiguration",
          "UpdateType": "Mutable"
        },
        "FailOnWarnings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-failonwarnings",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinimumCompressionSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-minimumcompressionsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-parameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Policy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-policy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::Stage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html",
      "Properties": {
        "AccessLogSetting": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting",
          "Required": false,
          "Type": "AccessLogSetting",
          "UpdateType": "Mutable"
        },
        "CacheClusterEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheClusterSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CanarySetting": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting",
          "Required": false,
          "Type": "CanarySetting",
          "UpdateType": "Mutable"
        },
        "ClientCertificateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-clientcertificateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeploymentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-deploymentid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DocumentationVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-documentationversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MethodSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings",
          "DuplicatesAllowed": false,
          "ItemType": "MethodSetting",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RestApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-restapiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "RestApiId"
          }
        },
        "StageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TracingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tracingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Variables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::UsagePlan": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html",
      "Properties": {
        "ApiStages": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-apistages",
          "DuplicatesAllowed": false,
          "ItemType": "ApiStage",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Quota": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota",
          "Required": false,
          "Type": "QuotaSettings",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Throttle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle",
          "Required": false,
          "Type": "ThrottleSettings",
          "UpdateType": "Mutable"
        },
        "UsagePlanName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGateway::UsagePlanKey": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html",
      "Properties": {
        "KeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-keyid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "KeyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-keytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ApiGateway::UsagePlanKey.KeyType"
          }
        },
        "UsagePlanId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-usageplanid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Api": {
      "Attributes": {
        "ApiEndpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html",
      "Properties": {
        "ApiKeySelectionExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-apikeyselectionexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BasePath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-basepath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Body": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-body",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BodyS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-bodys3location",
          "Required": false,
          "Type": "BodyS3Location",
          "UpdateType": "Mutable"
        },
        "CorsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-corsconfiguration",
          "Required": false,
          "Type": "Cors",
          "UpdateType": "Mutable"
        },
        "CredentialsArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-credentialsarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisableExecuteApiEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-disableexecuteapiendpoint",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisableSchemaValidation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-disableschemavalidation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FailOnWarnings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-failonwarnings",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProtocolType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-protocoltype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RouteKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-routekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RouteSelectionExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-routeselectionexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-target",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::ApiMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ApiMappingKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-apimappingkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Stage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-stage",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Authorizer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AuthorizerCredentialsArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizercredentialsarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizerPayloadFormatVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizerpayloadformatversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizerResultTtlInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizerresultttlinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizerType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizertype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AuthorizerUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizeruri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableSimpleResponses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-enablesimpleresponses",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdentitySource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-identitysource",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "IdentityValidationExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-identityvalidationexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "JwtConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-jwtconfiguration",
          "Required": false,
          "Type": "JWTConfiguration",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Deployment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-stagename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::DomainName": {
      "Attributes": {
        "RegionalDomainName": {
          "PrimitiveType": "String"
        },
        "RegionalHostedZoneId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html",
      "Properties": {
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DomainNameConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-domainnameconfigurations",
          "ItemType": "DomainNameConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MutualTlsAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-mutualtlsauthentication",
          "Required": false,
          "Type": "MutualTlsAuthentication",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Integration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ConnectionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-connectionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConnectionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-connectiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ContentHandlingStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-contenthandlingstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CredentialsArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-credentialsarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegrationMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-integrationmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegrationSubtype": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-integrationsubtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegrationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-integrationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IntegrationUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-integrationuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PassthroughBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-passthroughbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PayloadFormatVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-payloadformatversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-requestparameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestTemplates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-requesttemplates",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-responseparameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TemplateSelectionExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-templateselectionexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TimeoutInMillis": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-timeoutinmillis",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TlsConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-tlsconfig",
          "Required": false,
          "Type": "TlsConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::IntegrationResponse": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ContentHandlingStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-contenthandlingstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IntegrationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-integrationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IntegrationResponseKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-integrationresponsekey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResponseParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-responseparameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseTemplates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-responsetemplates",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TemplateSelectionExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-templateselectionexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Model": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ContentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-contenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Schema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-schema",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Route": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ApiKeyRequired": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-apikeyrequired",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizationScopes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-authorizationscopes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AuthorizationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-authorizationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AuthorizerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-authorizerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ModelSelectionExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-modelselectionexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OperationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-operationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestModels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-requestmodels",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-requestparameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RouteKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-routekey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RouteResponseSelectionExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-routeresponseselectionexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Target": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-target",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::RouteResponse": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ModelSelectionExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-modelselectionexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseModels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-responsemodels",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-responseparameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RouteId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-routeid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RouteResponseKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-routeresponsekey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApiGatewayV2::Stage": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html",
      "Properties": {
        "AccessLogSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings",
          "Required": false,
          "Type": "AccessLogSettings",
          "UpdateType": "Mutable"
        },
        "AccessPolicyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesspolicyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AutoDeploy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-autodeploy",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ClientCertificateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-clientcertificateid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultRouteSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-defaultroutesettings",
          "Required": false,
          "Type": "RouteSettings",
          "UpdateType": "Mutable"
        },
        "DeploymentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-deploymentid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RouteSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "StageVariables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppConfig::HostedConfigurationVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html#cfn-appconfig-hostedconfigurationversion-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ConfigurationProfileId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html#cfn-appconfig-hostedconfigurationversion-configurationprofileid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Content": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html#cfn-appconfig-hostedconfigurationversion-content",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ContentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html#cfn-appconfig-hostedconfigurationversion-contenttype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html#cfn-appconfig-hostedconfigurationversion-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LatestVersionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html#cfn-appconfig-hostedconfigurationversion-latestversionnumber",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppFlow::ConnectorProfile": {
      "Attributes": {
        "ConnectorProfileArn": {
          "PrimitiveType": "String"
        },
        "CredentialsArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html",
      "Properties": {
        "ConnectionMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html#cfn-appflow-connectorprofile-connectionmode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ConnectionMode"
          }
        },
        "ConnectorProfileConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html#cfn-appflow-connectorprofile-connectorprofileconfig",
          "Required": false,
          "Type": "ConnectorProfileConfig",
          "UpdateType": "Mutable"
        },
        "ConnectorProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html#cfn-appflow-connectorprofile-connectorprofilename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ConnectorProfileName"
          }
        },
        "ConnectorType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html#cfn-appflow-connectorprofile-connectortype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.ConnectorType"
          }
        },
        "KMSArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html#cfn-appflow-connectorprofile-kmsarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AppFlow::ConnectorProfile.KMSArn"
          }
        }
      }
    },
    "AWS::AppFlow::Flow": {
      "Attributes": {
        "FlowArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.Description"
          }
        },
        "DestinationFlowConfigList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-destinationflowconfiglist",
          "ItemType": "DestinationFlowConfig",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "FlowName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-flowname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.FlowName"
          }
        },
        "KMSArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-kmsarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AppFlow::Flow.KMSArn"
          }
        },
        "SourceFlowConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-sourceflowconfig",
          "Required": true,
          "Type": "SourceFlowConfig",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tasks": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-tasks",
          "ItemType": "Task",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TriggerConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html#cfn-appflow-flow-triggerconfig",
          "Required": true,
          "Type": "TriggerConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::GatewayRoute": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "GatewayRouteName": {
          "PrimitiveType": "String"
        },
        "MeshName": {
          "PrimitiveType": "String"
        },
        "MeshOwner": {
          "PrimitiveType": "String"
        },
        "ResourceOwner": {
          "PrimitiveType": "String"
        },
        "Uid": {
          "PrimitiveType": "String"
        },
        "VirtualGatewayName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html",
      "Properties": {
        "GatewayRouteName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html#cfn-appmesh-gatewayroute-gatewayroutename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MeshName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html#cfn-appmesh-gatewayroute-meshname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MeshOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html#cfn-appmesh-gatewayroute-meshowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html#cfn-appmesh-gatewayroute-spec",
          "Required": true,
          "Type": "GatewayRouteSpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html#cfn-appmesh-gatewayroute-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VirtualGatewayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html#cfn-appmesh-gatewayroute-virtualgatewayname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppMesh::Mesh": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "MeshName": {
          "PrimitiveType": "String"
        },
        "MeshOwner": {
          "PrimitiveType": "String"
        },
        "ResourceOwner": {
          "PrimitiveType": "String"
        },
        "Uid": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html",
      "Properties": {
        "MeshName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-meshname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-spec",
          "Required": false,
          "Type": "MeshSpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppMesh::Route": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "MeshName": {
          "PrimitiveType": "String"
        },
        "MeshOwner": {
          "PrimitiveType": "String"
        },
        "ResourceOwner": {
          "PrimitiveType": "String"
        },
        "RouteName": {
          "PrimitiveType": "String"
        },
        "Uid": {
          "PrimitiveType": "String"
        },
        "VirtualRouterName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html",
      "Properties": {
        "MeshName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-meshname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MeshOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-meshowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RouteName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-routename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-spec",
          "Required": true,
          "Type": "RouteSpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VirtualRouterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-virtualroutername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppMesh::VirtualGateway": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "MeshName": {
          "PrimitiveType": "String"
        },
        "MeshOwner": {
          "PrimitiveType": "String"
        },
        "ResourceOwner": {
          "PrimitiveType": "String"
        },
        "Uid": {
          "PrimitiveType": "String"
        },
        "VirtualGatewayName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html",
      "Properties": {
        "MeshName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html#cfn-appmesh-virtualgateway-meshname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MeshOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html#cfn-appmesh-virtualgateway-meshowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html#cfn-appmesh-virtualgateway-spec",
          "Required": true,
          "Type": "VirtualGatewaySpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html#cfn-appmesh-virtualgateway-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VirtualGatewayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html#cfn-appmesh-virtualgateway-virtualgatewayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppMesh::VirtualNode": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "MeshName": {
          "PrimitiveType": "String"
        },
        "MeshOwner": {
          "PrimitiveType": "String"
        },
        "ResourceOwner": {
          "PrimitiveType": "String"
        },
        "Uid": {
          "PrimitiveType": "String"
        },
        "VirtualNodeName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html",
      "Properties": {
        "MeshName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-meshname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MeshOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-meshowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-spec",
          "Required": true,
          "Type": "VirtualNodeSpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VirtualNodeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-virtualnodename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppMesh::VirtualRouter": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "MeshName": {
          "PrimitiveType": "String"
        },
        "MeshOwner": {
          "PrimitiveType": "String"
        },
        "ResourceOwner": {
          "PrimitiveType": "String"
        },
        "Uid": {
          "PrimitiveType": "String"
        },
        "VirtualRouterName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html",
      "Properties": {
        "MeshName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-meshname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MeshOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-meshowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-spec",
          "Required": true,
          "Type": "VirtualRouterSpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VirtualRouterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-virtualroutername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppMesh::VirtualService": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "MeshName": {
          "PrimitiveType": "String"
        },
        "MeshOwner": {
          "PrimitiveType": "String"
        },
        "ResourceOwner": {
          "PrimitiveType": "String"
        },
        "Uid": {
          "PrimitiveType": "String"
        },
        "VirtualServiceName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html",
      "Properties": {
        "MeshName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-meshname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MeshOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-meshowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Spec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-spec",
          "Required": true,
          "Type": "VirtualServiceSpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VirtualServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-virtualservicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppStream::DirectoryConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html",
      "Properties": {
        "DirectoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html#cfn-appstream-directoryconfig-directoryname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "OrganizationalUnitDistinguishedNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html#cfn-appstream-directoryconfig-organizationalunitdistinguishednames",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ServiceAccountCredentials": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html#cfn-appstream-directoryconfig-serviceaccountcredentials",
          "Required": true,
          "Type": "ServiceAccountCredentials",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Fleet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html",
      "Properties": {
        "ComputeCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-computecapacity",
          "Required": true,
          "Type": "ComputeCapacity",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisconnectTimeoutInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-disconnecttimeoutinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppStream::Fleet.DisconnectTimeoutInSeconds"
          }
        },
        "DisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-displayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainJoinInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-domainjoininfo",
          "Required": false,
          "Type": "DomainJoinInfo",
          "UpdateType": "Mutable"
        },
        "EnableDefaultInternetAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-enabledefaultinternetaccess",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FleetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-fleettype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IamRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-iamrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdleDisconnectTimeoutInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-idledisconnecttimeoutinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppStream::Fleet.IdleDisconnectTimeoutInSeconds"
          }
        },
        "ImageArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-imagearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-imagename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AppStreamInstanceType"
          }
        },
        "MaxUserDurationInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-maxuserdurationinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppStream::Fleet.MaxUserDurationInSeconds"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "StreamView": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-streamview",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::ImageBuilder": {
      "Attributes": {
        "StreamingUrl": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html",
      "Properties": {
        "AccessEndpoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-accessendpoints",
          "ItemType": "AccessEndpoint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AppstreamAgentVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-appstreamagentversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-displayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainJoinInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo",
          "Required": false,
          "Type": "DomainJoinInfo",
          "UpdateType": "Mutable"
        },
        "EnableDefaultInternetAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-enabledefaultinternetaccess",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IamRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-iamrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AppStreamInstanceType"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::Stack": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html",
      "Properties": {
        "AccessEndpoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-accessendpoints",
          "ItemType": "AccessEndpoint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ApplicationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-applicationsettings",
          "Required": false,
          "Type": "ApplicationSettings",
          "UpdateType": "Mutable"
        },
        "AttributesToDelete": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-attributestodelete",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DeleteStorageConnectors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-deletestorageconnectors",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-displayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmbedHostDomains": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-embedhostdomains",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "FeedbackURL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-feedbackurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RedirectURL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-redirecturl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StorageConnectors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-storageconnectors",
          "ItemType": "StorageConnector",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-usersettings",
          "ItemType": "UserSetting",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::StackFleetAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html",
      "Properties": {
        "FleetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-fleetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StackName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-stackname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppStream::StackUserAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html",
      "Properties": {
        "AuthenticationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-authenticationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SendEmailNotification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-sendemailnotification",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StackName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-stackname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppStream::User": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html",
      "Properties": {
        "AuthenticationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-authenticationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "FirstName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-firstname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LastName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-lastname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MessageAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-messageaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AppSync::ApiCache": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html",
      "Properties": {
        "ApiCachingBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-apicachingbehavior",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AtRestEncryptionEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-atrestencryptionenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TransitEncryptionEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-transitencryptionenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ttl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-ttl",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::DataSource": {
      "Attributes": {
        "DataSourceArn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DynamoDBConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-dynamodbconfig",
          "Required": false,
          "Type": "DynamoDBConfig",
          "UpdateType": "Mutable"
        },
        "ElasticsearchConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-elasticsearchconfig",
          "Required": false,
          "Type": "ElasticsearchConfig",
          "UpdateType": "Mutable"
        },
        "HttpConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-httpconfig",
          "Required": false,
          "Type": "HttpConfig",
          "UpdateType": "Mutable"
        },
        "LambdaConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-lambdaconfig",
          "Required": false,
          "Type": "LambdaConfig",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RelationalDatabaseConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-relationaldatabaseconfig",
          "Required": false,
          "Type": "RelationalDatabaseConfig",
          "UpdateType": "Mutable"
        },
        "ServiceRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppSync::DataSource.Type"
          }
        }
      }
    },
    "AWS::AppSync::FunctionConfiguration": {
      "Attributes": {
        "DataSourceName": {
          "PrimitiveType": "String"
        },
        "FunctionArn": {
          "PrimitiveType": "String"
        },
        "FunctionId": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DataSourceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-datasourcename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FunctionVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-functionversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RequestMappingTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-requestmappingtemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestMappingTemplateS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-requestmappingtemplates3location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseMappingTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-responsemappingtemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseMappingTemplateS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-responsemappingtemplates3location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SyncConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-syncconfig",
          "Required": false,
          "Type": "SyncConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::GraphQLApi": {
      "Attributes": {
        "ApiId": {
          "PrimitiveType": "String"
        },
        "Arn": {
          "PrimitiveType": "String"
        },
        "GraphQLUrl": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html",
      "Properties": {
        "AdditionalAuthenticationProviders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-additionalauthenticationproviders",
          "Required": false,
          "Type": "AdditionalAuthenticationProviders",
          "UpdateType": "Mutable"
        },
        "AuthenticationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-authenticationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppSync::GraphQLApi.AuthType"
          }
        },
        "LogConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-logconfig",
          "Required": false,
          "Type": "LogConfig",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OpenIDConnectConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig",
          "Required": false,
          "Type": "OpenIDConnectConfig",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-tags",
          "Required": false,
          "Type": "Tags",
          "UpdateType": "Mutable"
        },
        "UserPoolConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig",
          "Required": false,
          "Type": "UserPoolConfig",
          "UpdateType": "Mutable"
        },
        "XrayEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-xrayenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::GraphQLSchema": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Definition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefinitionS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definitions3location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AppSync::Resolver": {
      "Attributes": {
        "FieldName": {
          "PrimitiveType": "String"
        },
        "ResolverArn": {
          "PrimitiveType": "String"
        },
        "TypeName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html",
      "Properties": {
        "ApiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-apiid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CachingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-cachingconfig",
          "Required": false,
          "Type": "CachingConfig",
          "UpdateType": "Mutable"
        },
        "DataSourceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-datasourcename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FieldName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-fieldname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Kind": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-kind",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AppSync::Resolver.Kind"
          }
        },
        "PipelineConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-pipelineconfig",
          "Required": false,
          "Type": "PipelineConfig",
          "UpdateType": "Mutable"
        },
        "RequestMappingTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-requestmappingtemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestMappingTemplateS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-requestmappingtemplates3location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseMappingTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-responsemappingtemplate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResponseMappingTemplateS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-responsemappingtemplates3location",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SyncConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-syncconfig",
          "Required": false,
          "Type": "SyncConfig",
          "UpdateType": "Mutable"
        },
        "TypeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-typename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalableTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html",
      "Properties": {
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-maxcapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MinCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-mincapacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-resourceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ScalableDimension": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-scalabledimension",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ScheduledActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-scheduledactions",
          "DuplicatesAllowed": false,
          "ItemType": "ScheduledAction",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ServiceNamespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-servicenamespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SuspendedState": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-suspendedstate",
          "Required": false,
          "Type": "SuspendedState",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html",
      "Properties": {
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PolicyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-policytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationAutoScaling::ScalingPolicy.PolicyType"
          }
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ScalableDimension": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-scalabledimension",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ScalingTargetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-scalingtargetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ServiceNamespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-servicenamespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StepScalingPolicyConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration",
          "Required": false,
          "Type": "StepScalingPolicyConfiguration",
          "UpdateType": "Mutable"
        },
        "TargetTrackingScalingPolicyConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration",
          "Required": false,
          "Type": "TargetTrackingScalingPolicyConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ApplicationInsights::Application": {
      "Attributes": {
        "ApplicationARN": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html",
      "Properties": {
        "AutoConfigurationEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-autoconfigurationenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CWEMonitorEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-cwemonitorenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ComponentMonitoringSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-componentmonitoringsettings",
          "ItemType": "ComponentMonitoringSetting",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CustomComponents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-customcomponents",
          "ItemType": "CustomComponent",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LogPatternSets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-logpatternsets",
          "ItemType": "LogPatternSet",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OpsCenterEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-opscenterenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OpsItemSNSTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-opsitemsnstopicarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.OpsItemSNSTopicArn"
          }
        },
        "ResourceGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-resourcegroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ApplicationInsights::Application.ResourceGroupName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Athena::DataCatalog": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Athena::DataCatalog.Description"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Athena::DataCatalog.Name"
          }
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-parameters",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Athena::DataCatalog.Type"
          }
        }
      }
    },
    "AWS::Athena::NamedQuery": {
      "Attributes": {
        "NamedQueryId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html",
      "Properties": {
        "Database": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-database",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Athena::NamedQuery.Database"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Athena::NamedQuery.Description"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Athena::NamedQuery.Name"
          }
        },
        "QueryString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-querystring",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Athena::NamedQuery.QueryString"
          }
        },
        "WorkGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-workgroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Athena::NamedQuery.WorkGroup"
          }
        }
      }
    },
    "AWS::Athena::WorkGroup": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "EffectiveEngineVersion": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Athena::WorkGroup.Name"
          }
        },
        "RecursiveDeleteOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-recursivedeleteoption",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Athena::WorkGroup.State"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "WorkGroupConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-workgroupconfiguration",
          "Required": false,
          "Type": "WorkGroupConfiguration",
          "UpdateType": "Mutable"
        },
        "WorkGroupConfigurationUpdates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-workgroupconfigurationupdates",
          "Required": false,
          "Type": "WorkGroupConfigurationUpdates",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AuditManager::Assessment": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "AssessmentId": {
          "PrimitiveType": "String"
        },
        "CreationTime": {
          "PrimitiveType": "Double"
        },
        "Delegations": {
          "ItemType": "Delegation",
          "Type": "List"
        },
        "FrameworkId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html",
      "Properties": {
        "AssessmentReportsDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-assessmentreportsdestination",
          "Required": false,
          "Type": "AssessmentReportsDestination",
          "UpdateType": "Mutable"
        },
        "AwsAccount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-awsaccount",
          "Required": false,
          "Type": "AWSAccount",
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FrameworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-frameworkid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.FrameworkId"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Name"
          }
        },
        "Roles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-roles",
          "ItemType": "Role",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-scope",
          "Required": false,
          "Type": "Scope",
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AuditManager::Assessment.Status"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html#cfn-auditmanager-assessment-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::AutoScalingGroup": {
      "Attributes": {
        "LaunchConfigurationName": {
          "PrimitiveType": "String"
        },
        "LaunchTemplateSpecification": {
          "PrimitiveType": "String"
        },
        "MixedInstancesPolicy": {
          "PrimitiveType": "String"
        },
        "PlacementGroup": {
          "PrimitiveType": "String"
        },
        "VPCZoneIdentifier": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html",
      "Properties": {
        "AutoScalingGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-autoscaling-autoscalinggroup-autoscalinggroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-availabilityzones",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AvailabilityZones",
            "ValueType": "AvailabilityZone"
          }
        },
        "CapacityRebalance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-capacityrebalance",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Cooldown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-cooldown",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DesiredCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-desiredcapacity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckGracePeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-healthcheckgraceperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-healthchecktype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::AutoScalingGroup.HealthCheckType"
          }
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LaunchConfigurationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-launchconfigurationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "LaunchConfigurationName"
          }
        },
        "LaunchTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-launchtemplate",
          "Required": false,
          "Type": "LaunchTemplateSpecification",
          "UpdateType": "Mutable"
        },
        "LifecycleHookSpecificationList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecificationlist",
          "DuplicatesAllowed": true,
          "ItemType": "LifecycleHookSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LoadBalancerNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-loadbalancernames",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "LoadBalancerNames",
            "ValueType": "LoadBalancerName"
          }
        },
        "MaxInstanceLifetime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-maxinstancelifetime",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-maxsize",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MetricsCollection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-metricscollection",
          "DuplicatesAllowed": true,
          "ItemType": "MetricsCollection",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MinSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-minsize",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MixedInstancesPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-mixedinstancespolicy",
          "Required": false,
          "Type": "MixedInstancesPolicy",
          "UpdateType": "Mutable"
        },
        "NewInstancesProtectedFromScaleIn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-newinstancesprotectedfromscalein",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotificationConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-notificationconfigurations",
          "DuplicatesAllowed": true,
          "ItemType": "NotificationConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PlacementGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-placementgroup",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceLinkedRoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-autoscaling-autoscalinggroup-servicelinkedrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-tags",
          "DuplicatesAllowed": true,
          "ItemType": "TagProperty",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetGroupARNs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-targetgrouparns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "TargetGroupArns",
            "ValueType": "TargetGroupArn"
          }
        },
        "TerminationPolicies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-termpolicy",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VPCZoneIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-vpczoneidentifier",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "SubnetIds",
            "ValueType": "SubnetId"
          }
        }
      }
    },
    "AWS::AutoScaling::LaunchConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html",
      "Properties": {
        "AssociatePublicIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cf-as-launchconfig-associatepubip",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BlockDeviceMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-blockdevicemappings",
          "DuplicatesAllowed": false,
          "ItemType": "BlockDeviceMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ClassicLinkVPCId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-classiclinkvpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClassicLinkVPCSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-classiclinkvpcsecuritygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IamInstanceProfile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-iaminstanceprofile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::InstanceProfile.NameOrArn"
          }
        },
        "ImageId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-imageid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "ImageId"
          }
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceMonitoring": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instancemonitoring",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2InstanceType"
          }
        },
        "KernelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-kernelid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-keyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "KeyPair"
          }
        },
        "LaunchConfigurationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-autoscaling-launchconfig-launchconfigurationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MetadataOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-autoscaling-launchconfig-metadataoptions",
          "Required": false,
          "Type": "MetadataOptions",
          "UpdateType": "Immutable"
        },
        "PlacementTenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-placementtenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "PlacementTenancy"
          }
        },
        "RamDiskId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-ramdiskid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-securitygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SpotPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-spotprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "UserData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-userdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::AutoScaling::LifecycleHook": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html",
      "Properties": {
        "AutoScalingGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-autoscalinggroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DefaultResult": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-defaultresult",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::LifecycleHook.DefaultResult"
          }
        },
        "HeartbeatTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-heartbeattimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LifecycleHookName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-autoscaling-lifecyclehook-lifecyclehookname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LifecycleTransition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-lifecycletransition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::LifecycleHook.LifecycleTransition"
          }
        },
        "NotificationMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-notificationmetadata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotificationTargetARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-notificationtargetarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::ScalingPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html",
      "Properties": {
        "AdjustmentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-adjustmenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.AdjustmentType"
          }
        },
        "AutoScalingGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-autoscalinggroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Cooldown": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-cooldown",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EstimatedInstanceWarmup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-estimatedinstancewarmup",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricAggregationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-metricaggregationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.MetricAggregationType"
          }
        },
        "MinAdjustmentMagnitude": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-minadjustmentmagnitude",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PolicyType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-policytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::AutoScaling::ScalingPolicy.PolicyType"
          }
        },
        "ScalingAdjustment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-scalingadjustment",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StepAdjustments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-stepadjustments",
          "DuplicatesAllowed": false,
          "ItemType": "StepAdjustment",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetTrackingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration",
          "Required": false,
          "Type": "TargetTrackingConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScaling::ScheduledAction": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html",
      "Properties": {
        "AutoScalingGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-asgname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DesiredCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-desiredcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-endtime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-maxsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-minsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Recurrence": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-recurrence",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-starttime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::AutoScalingPlans::ScalingPlan": {
      "Attributes": {
        "ScalingPlanName": {
          "PrimitiveType": "String"
        },
        "ScalingPlanVersion": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html",
      "Properties": {
        "ApplicationSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-applicationsource",
          "Required": true,
          "Type": "ApplicationSource",
          "UpdateType": "Mutable"
        },
        "ScalingInstructions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-scalinginstructions",
          "ItemType": "ScalingInstruction",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupPlan": {
      "Attributes": {
        "BackupPlanArn": {
          "PrimitiveType": "String"
        },
        "BackupPlanId": {
          "PrimitiveType": "String"
        },
        "VersionId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html",
      "Properties": {
        "BackupPlan": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html#cfn-backup-backupplan-backupplan",
          "Required": true,
          "Type": "BackupPlanResourceType",
          "UpdateType": "Mutable"
        },
        "BackupPlanTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html#cfn-backup-backupplan-backupplantags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Backup::BackupSelection": {
      "Attributes": {
        "BackupPlanId": {
          "PrimitiveType": "String"
        },
        "SelectionId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html",
      "Properties": {
        "BackupPlanId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html#cfn-backup-backupselection-backupplanid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Backup::BackupPlan.Id"
          }
        },
        "BackupSelection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html#cfn-backup-backupselection-backupselection",
          "Required": true,
          "Type": "BackupSelectionResourceType",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Backup::BackupVault": {
      "Attributes": {
        "BackupVaultArn": {
          "PrimitiveType": "String"
        },
        "BackupVaultName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html",
      "Properties": {
        "AccessPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-accesspolicy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BackupVaultName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-backupvaultname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Backup::BackupVault.BackupVaultName"
          }
        },
        "BackupVaultTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-backupvaulttags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "EncryptionKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-encryptionkeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "KmsKey.Arn"
          }
        },
        "Notifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-notifications",
          "Required": false,
          "Type": "NotificationObjectType",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::ComputeEnvironment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html",
      "Properties": {
        "ComputeEnvironmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-computeenvironmentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ComputeResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-computeresources",
          "Required": false,
          "Type": "ComputeResources",
          "UpdateType": "Mutable"
        },
        "ServiceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-servicerole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Batch::JobDefinition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html",
      "Properties": {
        "ContainerProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-containerproperties",
          "Required": false,
          "Type": "ContainerProperties",
          "UpdateType": "Mutable"
        },
        "JobDefinitionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-jobdefinitionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NodeProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-nodeproperties",
          "Required": false,
          "Type": "NodeProperties",
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PlatformCapabilities": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-platformcapabilities",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PropagateTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-propagatetags",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RetryStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-retrystrategy",
          "Required": false,
          "Type": "RetryStrategy",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-timeout",
          "Required": false,
          "Type": "Timeout",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Batch::JobQueue": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html",
      "Properties": {
        "ComputeEnvironmentOrder": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-computeenvironmentorder",
          "ItemType": "ComputeEnvironmentOrder",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "JobQueueName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-jobqueuename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Budgets::Budget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html",
      "Properties": {
        "Budget": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-budget",
          "Required": true,
          "Type": "BudgetData",
          "UpdateType": "Mutable"
        },
        "NotificationsWithSubscribers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-notificationswithsubscribers",
          "ItemType": "NotificationWithSubscribers",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CDK::Metadata": {
      "Documentation": "https://docs.aws.amazon.com/cdk/latest/guide/tools.html",
      "Properties": {
        "Analytics": {
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Modules": {
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cassandra::Keyspace": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html",
      "Properties": {
        "KeyspaceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html#cfn-cassandra-keyspace-keyspacename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Cassandra::Keyspace.KeyspaceName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html#cfn-cassandra-keyspace-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cassandra::Table": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html",
      "Properties": {
        "BillingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-billingmode",
          "Required": false,
          "Type": "BillingMode",
          "UpdateType": "Mutable"
        },
        "ClusteringKeyColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-clusteringkeycolumns",
          "DuplicatesAllowed": false,
          "ItemType": "ClusteringKeyColumn",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "KeyspaceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-keyspacename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Cassandra::Table.KeyspaceName"
          }
        },
        "PartitionKeyColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-partitionkeycolumns",
          "DuplicatesAllowed": false,
          "ItemType": "Column",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "PointInTimeRecoveryEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-pointintimerecoveryenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RegularColumns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-regularcolumns",
          "DuplicatesAllowed": false,
          "ItemType": "Column",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-tablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Cassandra::Table.TableName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CertificateManager::Certificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html",
      "Properties": {
        "CertificateAuthorityArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-certificateauthorityarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CertificateTransparencyLoggingPreference": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-certificatetransparencyloggingpreference",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DomainValidationOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-domainvalidationoptions",
          "DuplicatesAllowed": false,
          "ItemType": "DomainValidationOption",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "SubjectAlternativeNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-subjectalternativenames",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ValidationMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-validationmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CertificateValidationMethod"
          }
        }
      }
    },
    "AWS::Chatbot::SlackChannelConfiguration": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html",
      "Properties": {
        "ConfigurationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-configurationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Chatbot::SlackChannelConfiguration.ConfigurationName"
          }
        },
        "IamRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-iamrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Chatbot::SlackChannelConfiguration.IamRoleArn"
          }
        },
        "LoggingLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-logginglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Chatbot::SlackChannelConfiguration.LoggingLevel"
          }
        },
        "SlackChannelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-slackchannelid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Chatbot::SlackChannelConfiguration.SlackChannelId"
          }
        },
        "SlackWorkspaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-slackworkspaceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Chatbot::SlackChannelConfiguration.SlackWorkspaceId"
          }
        },
        "SnsTopicArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-snstopicarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Chatbot::SlackChannelConfiguration.SnsTopicArns"
          }
        }
      }
    },
    "AWS::Cloud9::EnvironmentEC2": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html",
      "Properties": {
        "AutomaticStopTimeMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-automaticstoptimeminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ConnectionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-connectiontype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-imageid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OwnerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-ownerarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Repositories": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-repositories",
          "ItemType": "Repository",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFormation::CustomResource": {
      "AdditionalProperties": true,
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html",
      "Properties": {
        "ServiceToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html#cfn-customresource-servicetoken",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CloudFormation::Macro": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-functionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-loggroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogRoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-logrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CloudFormation::ModuleDefaultVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html",
      "Properties": {
        "Arn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-arn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ModuleDefaultVersion.Arn"
          }
        },
        "ModuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-modulename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ModuleDefaultVersion.ModuleName"
          }
        },
        "VersionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-versionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ModuleDefaultVersion.VersionId"
          }
        }
      }
    },
    "AWS::CloudFormation::ModuleVersion": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Description": {
          "PrimitiveType": "String"
        },
        "DocumentationUrl": {
          "PrimitiveType": "String"
        },
        "IsDefaultVersion": {
          "PrimitiveType": "Boolean"
        },
        "Schema": {
          "PrimitiveType": "String"
        },
        "TimeCreated": {
          "PrimitiveType": "String"
        },
        "VersionId": {
          "PrimitiveType": "String"
        },
        "Visibility": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html",
      "Properties": {
        "ModuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html#cfn-cloudformation-moduleversion-modulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ModuleVersion.ModuleName"
          }
        },
        "ModulePackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html#cfn-cloudformation-moduleversion-modulepackage",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CloudFormation::ResourceDefaultVersion": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html",
      "Properties": {
        "TypeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-typename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ResourceDefaultVersion.TypeName"
          }
        },
        "TypeVersionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-typeversionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ResourceDefaultVersion.TypeVersionArn"
          }
        },
        "VersionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-versionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ResourceDefaultVersion.VersionId"
          }
        }
      }
    },
    "AWS::CloudFormation::ResourceVersion": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "IsDefaultVersion": {
          "PrimitiveType": "Boolean"
        },
        "ProvisioningType": {
          "PrimitiveType": "String"
        },
        "TypeArn": {
          "PrimitiveType": "String"
        },
        "VersionId": {
          "PrimitiveType": "String"
        },
        "Visibility": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html",
      "Properties": {
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-executionrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoggingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-loggingconfig",
          "Required": false,
          "Type": "LoggingConfig",
          "UpdateType": "Mutable"
        },
        "SchemaHandlerPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-schemahandlerpackage",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TypeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-typename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::ResourceVersion.TypeName"
          }
        }
      }
    },
    "AWS::CloudFormation::Stack": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html",
      "Properties": {
        "NotificationARNs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-notificationarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TemplateURL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TimeoutInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-timeoutinminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFormation::StackSet": {
      "Attributes": {
        "StackSetId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html",
      "Properties": {
        "AdministrationRoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-administrationrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.AdministrationRoleARN"
          }
        },
        "AutoDeployment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-autodeployment",
          "Required": false,
          "Type": "AutoDeployment",
          "UpdateType": "Mutable"
        },
        "Capabilities": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-capabilities",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.Capabilities"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.Description"
          }
        },
        "ExecutionRoleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-executionrolename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.ExecutionRoleName"
          }
        },
        "OperationPreferences": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-operationpreferences",
          "Required": false,
          "Type": "OperationPreferences",
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-parameters",
          "DuplicatesAllowed": false,
          "ItemType": "Parameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PermissionModel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-permissionmodel",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.PermissionModel"
          }
        },
        "StackInstancesGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-stackinstancesgroup",
          "DuplicatesAllowed": false,
          "ItemType": "StackInstances",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StackSetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-stacksetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.StackSetName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TemplateBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-templatebody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.TemplateBody"
          }
        },
        "TemplateURL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-templateurl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::StackSet.TemplateURL"
          }
        }
      }
    },
    "AWS::CloudFormation::WaitCondition": {
      "Attributes": {
        "Data": {
          "PrimitiveType": "Json"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html",
      "Properties": {
        "Count": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-count",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Handle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-handle",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-timeout",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFormation::WaitCondition.Timeout"
          }
        }
      }
    },
    "AWS::CloudFormation::WaitConditionHandle": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html",
      "Properties": {}
    },
    "AWS::CloudFront::CachePolicy": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        },
        "LastModifiedTime": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html",
      "Properties": {
        "CachePolicyConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html#cfn-cloudfront-cachepolicy-cachepolicyconfig",
          "Required": true,
          "Type": "CachePolicyConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::CloudFrontOriginAccessIdentity": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        },
        "S3CanonicalUserId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html",
      "Properties": {
        "CloudFrontOriginAccessIdentityConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig",
          "Required": true,
          "Type": "CloudFrontOriginAccessIdentityConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::Distribution": {
      "Attributes": {
        "DomainName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html",
      "Properties": {
        "DistributionConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-distributionconfig",
          "Required": true,
          "Type": "DistributionConfig",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::KeyGroup": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        },
        "LastModifiedTime": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html",
      "Properties": {
        "KeyGroupConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html#cfn-cloudfront-keygroup-keygroupconfig",
          "Required": true,
          "Type": "KeyGroupConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::OriginRequestPolicy": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        },
        "LastModifiedTime": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html",
      "Properties": {
        "OriginRequestPolicyConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig",
          "Required": true,
          "Type": "OriginRequestPolicyConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::PublicKey": {
      "Attributes": {
        "CreatedTime": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html",
      "Properties": {
        "PublicKeyConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html#cfn-cloudfront-publickey-publickeyconfig",
          "Required": true,
          "Type": "PublicKeyConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudFront::RealtimeLogConfig": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html",
      "Properties": {
        "EndPoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-endpoints",
          "DuplicatesAllowed": true,
          "ItemType": "EndPoint",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Fields": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-fields",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SamplingRate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-samplingrate",
          "PrimitiveType": "Double",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudFront::RealtimeLogConfig.SamplingRate"
          }
        }
      }
    },
    "AWS::CloudFront::StreamingDistribution": {
      "Attributes": {
        "DomainName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html",
      "Properties": {
        "StreamingDistributionConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig",
          "Required": true,
          "Type": "StreamingDistributionConfig",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-tags",
          "ItemType": "Tag",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudTrail::Trail": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "SnsTopicArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html",
      "Properties": {
        "CloudWatchLogsLogGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-cloudwatchlogsloggrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CloudWatchLogsRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-cloudwatchlogsrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableLogFileValidation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-enablelogfilevalidation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventSelectors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-eventselectors",
          "DuplicatesAllowed": false,
          "ItemType": "EventSelector",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "IncludeGlobalServiceEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-includeglobalserviceevents",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IsLogging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-islogging",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IsMultiRegionTrail": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-ismultiregiontrail",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KMSKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "S3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-s3bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-s3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnsTopicName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-snstopicname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TrailName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-trailname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CloudWatch::Alarm": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html",
      "Properties": {
        "ActionsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-actionsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AlarmActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmactions",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::CloudWatch::Alarm.AlarmActions",
            "ValueType": "AWS::CloudWatch::Alarm.AlarmAction"
          }
        },
        "AlarmDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AlarmName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ComparisonOperator": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-comparisonoperator",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::Alarm.ComparisonOperator"
          }
        },
        "DatapointsToAlarm": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarm-datapointstoalarm",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-dimension",
          "DuplicatesAllowed": true,
          "ItemType": "Dimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EvaluateLowSampleCountPercentile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-evaluatelowsamplecountpercentile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EvaluationPeriods": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-evaluationperiods",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ExtendedStatistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-extendedstatistic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InsufficientDataActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-insufficientdataactions",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-metricname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Metrics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarm-metrics",
          "DuplicatesAllowed": false,
          "ItemType": "MetricDataQuery",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-namespace",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OKActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-okactions",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Period": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-period",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Statistic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-statistic",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::Alarm.Statistic"
          }
        },
        "Threshold": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-threshold",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThresholdMetricId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-dynamic-threshold",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TreatMissingData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-treatmissingdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::Alarm.TreatMissingData"
          }
        },
        "Unit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-unit",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::Alarm.Unit"
          }
        }
      }
    },
    "AWS::CloudWatch::AnomalyDetector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html",
      "Properties": {
        "Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-configuration",
          "Required": false,
          "Type": "Configuration",
          "UpdateType": "Mutable"
        },
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-dimensions",
          "ItemType": "Dimension",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Namespace": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-namespace",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Stat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-stat",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CloudWatch::CompositeAlarm": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html",
      "Properties": {
        "ActionsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html#cfn-cloudwatch-compositealarm-actionsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AlarmActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html#cfn-cloudwatch-compositealarm-alarmactions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::CompositeAlarm.AlarmActions"
          }
        },
        "AlarmDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html#cfn-cloudwatch-compositealarm-alarmdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AlarmName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html#cfn-cloudwatch-compositealarm-alarmname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::CompositeAlarm.AlarmName"
          }
        },
        "AlarmRule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html#cfn-cloudwatch-compositealarm-alarmrule",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::CompositeAlarm.AlarmRule"
          }
        },
        "InsufficientDataActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html#cfn-cloudwatch-compositealarm-insufficientdataactions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::CompositeAlarm.InsufficientDataActions"
          }
        },
        "OKActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html#cfn-cloudwatch-compositealarm-okactions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::CompositeAlarm.OKActions"
          }
        }
      }
    },
    "AWS::CloudWatch::Dashboard": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html",
      "Properties": {
        "DashboardBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html#cfn-cloudwatch-dashboard-dashboardbody",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DashboardName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html#cfn-cloudwatch-dashboard-dashboardname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CloudWatch::InsightRule": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "RuleName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html",
      "Properties": {
        "RuleBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html#cfn-cloudwatch-insightrule-rulebody",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html#cfn-cloudwatch-insightrule-rulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RuleState": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html#cfn-cloudwatch-insightrule-rulestate",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html#cfn-cloudwatch-insightrule-tags",
          "Required": false,
          "Type": "Tags",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CloudWatch::MetricStream": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CreationDate": {
          "PrimitiveType": "String"
        },
        "LastUpdateDate": {
          "PrimitiveType": "String"
        },
        "State": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html",
      "Properties": {
        "ExcludeFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html#cfn-cloudwatch-metricstream-excludefilters",
          "DuplicatesAllowed": false,
          "ItemType": "MetricStreamFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "FirehoseArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html#cfn-cloudwatch-metricstream-firehosearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::MetricStream.FirehoseArn"
          }
        },
        "IncludeFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html#cfn-cloudwatch-metricstream-includefilters",
          "DuplicatesAllowed": false,
          "ItemType": "MetricStreamFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html#cfn-cloudwatch-metricstream-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::MetricStream.Name"
          }
        },
        "OutputFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html#cfn-cloudwatch-metricstream-outputformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::MetricStream.OutputFormat"
          }
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html#cfn-cloudwatch-metricstream-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CloudWatch::MetricStream.RoleArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html#cfn-cloudwatch-metricstream-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeArtifact::Domain": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "EncryptionKey": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        },
        "Owner": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html",
      "Properties": {
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html#cfn-codeartifact-domain-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeArtifact::Domain.DomainName"
          }
        },
        "EncryptionKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html#cfn-codeartifact-domain-encryptionkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PermissionsPolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html#cfn-codeartifact-domain-permissionspolicydocument",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html#cfn-codeartifact-domain-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeArtifact::Repository": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "DomainName": {
          "PrimitiveType": "String"
        },
        "DomainOwner": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeArtifact::Repository.DomainName"
          }
        },
        "DomainOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-domainowner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeArtifact::Repository.DomainOwner"
          }
        },
        "ExternalConnections": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-externalconnections",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PermissionsPolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-permissionspolicydocument",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepositoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-repositoryname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeArtifact::Repository.RepositoryName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Upstreams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html#cfn-codeartifact-repository-upstreams",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::Project": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html",
      "Properties": {
        "Artifacts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-artifacts",
          "Required": true,
          "Type": "Artifacts",
          "UpdateType": "Mutable"
        },
        "BadgeEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-badgeenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BuildBatchConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-buildbatchconfig",
          "Required": false,
          "Type": "ProjectBuildBatchConfig",
          "UpdateType": "Mutable"
        },
        "Cache": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-cache",
          "Required": false,
          "Type": "ProjectCache",
          "UpdateType": "Mutable"
        },
        "ConcurrentBuildLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-concurrentbuildlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EncryptionKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-encryptionkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-environment",
          "Required": true,
          "Type": "Environment",
          "UpdateType": "Mutable"
        },
        "FileSystemLocations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-filesystemlocations",
          "ItemType": "ProjectFileSystemLocation",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LogsConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-logsconfig",
          "Required": false,
          "Type": "LogsConfig",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "QueuedTimeoutInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-queuedtimeoutinminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.QueuedTimeoutInMinutes"
          }
        },
        "SecondaryArtifacts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondaryartifacts",
          "ItemType": "Artifacts",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecondarySourceVersions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondarysourceversions",
          "ItemType": "ProjectSourceVersion",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecondarySources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondarysources",
          "ItemType": "Source",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ServiceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-servicerole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.NameOrArn"
          }
        },
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-source",
          "Required": true,
          "Type": "Source",
          "UpdateType": "Mutable"
        },
        "SourceVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-sourceversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TimeoutInMinutes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-timeoutinminutes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::CodeBuild::Project.TimeoutInMinutes"
          }
        },
        "Triggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-triggers",
          "Required": false,
          "Type": "ProjectTriggers",
          "UpdateType": "Mutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeBuild::ReportGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html",
      "Properties": {
        "DeleteReports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html#cfn-codebuild-reportgroup-deletereports",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExportConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html#cfn-codebuild-reportgroup-exportconfig",
          "Required": true,
          "Type": "ReportExportConfig",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html#cfn-codebuild-reportgroup-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html#cfn-codebuild-reportgroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html#cfn-codebuild-reportgroup-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CodeBuild::SourceCredential": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html",
      "Properties": {
        "AuthType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-authtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ServerType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-servertype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Token": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-token",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeCommit::Repository": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CloneUrlHttp": {
          "PrimitiveType": "String"
        },
        "CloneUrlSsh": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html",
      "Properties": {
        "Code": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-code",
          "Required": false,
          "Type": "Code",
          "UpdateType": "Mutable"
        },
        "RepositoryDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-repositorydescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepositoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-repositoryname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Triggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-triggers",
          "ItemType": "RepositoryTrigger",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional"
        }
      }
    },
    "AWS::CodeDeploy::Application": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html#cfn-codedeploy-application-applicationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ComputePlatform": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html#cfn-codedeploy-application-computeplatform",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeDeploy::Application.ComputePlatform"
          }
        }
      }
    },
    "AWS::CodeDeploy::DeploymentConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html",
      "Properties": {
        "DeploymentConfigName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html#cfn-codedeploy-deploymentconfig-deploymentconfigname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MinimumHealthyHosts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts",
          "Required": false,
          "Type": "MinimumHealthyHosts",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CodeDeploy::DeploymentGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html",
      "Properties": {
        "AlarmConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-alarmconfiguration",
          "Required": false,
          "Type": "AlarmConfiguration",
          "UpdateType": "Mutable"
        },
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AutoRollbackConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration",
          "Required": false,
          "Type": "AutoRollbackConfiguration",
          "UpdateType": "Mutable"
        },
        "AutoScalingGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-autoscalinggroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Deployment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deployment",
          "Required": false,
          "Type": "Deployment",
          "UpdateType": "Mutable"
        },
        "DeploymentConfigName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentconfigname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeploymentGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DeploymentStyle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentstyle",
          "Required": false,
          "Type": "DeploymentStyle",
          "UpdateType": "Mutable"
        },
        "Ec2TagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-ec2tagfilters",
          "DuplicatesAllowed": false,
          "ItemType": "EC2TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Ec2TagSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-ec2tagset",
          "Required": false,
          "Type": "EC2TagSet",
          "UpdateType": "Mutable"
        },
        "LoadBalancerInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo",
          "Required": false,
          "Type": "LoadBalancerInfo",
          "UpdateType": "Mutable"
        },
        "OnPremisesInstanceTagFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-onpremisesinstancetagfilters",
          "DuplicatesAllowed": false,
          "ItemType": "TagFilter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OnPremisesTagSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-onpremisestagset",
          "Required": false,
          "Type": "OnPremisesTagSet",
          "UpdateType": "Mutable"
        },
        "ServiceRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-servicerolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TriggerConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-triggerconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "TriggerConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeGuruProfiler::ProfilingGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html",
      "Properties": {
        "AgentPermissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-agentpermissions",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AnomalyDetectionNotificationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-anomalydetectionnotificationconfiguration",
          "ItemType": "Channel",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ComputePlatform": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-computeplatform",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeGuruProfiler::ProfilingGroup.ComputePlatform"
          }
        },
        "ProfilingGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-profilinggroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeGuruProfiler::ProfilingGroup.ProfilingGroupName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeGuruReviewer::RepositoryAssociation": {
      "Attributes": {
        "AssociationArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html",
      "Properties": {
        "ConnectionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html#cfn-codegurureviewer-repositoryassociation-connectionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeGuruReviewer::RepositoryAssociation.ConnectionArn"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html#cfn-codegurureviewer-repositoryassociation-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeGuruReviewer::RepositoryAssociation.Name"
          }
        },
        "Owner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html#cfn-codegurureviewer-repositoryassociation-owner",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeGuruReviewer::RepositoryAssociation.Owner"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html#cfn-codegurureviewer-repositoryassociation-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html#cfn-codegurureviewer-repositoryassociation-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeGuruReviewer::RepositoryAssociation.Type"
          }
        }
      }
    },
    "AWS::CodePipeline::CustomActionType": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html",
      "Properties": {
        "Category": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-category",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodePipeline::Pipeline.ActionTypeId.Category"
          }
        },
        "ConfigurationProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-configurationproperties",
          "DuplicatesAllowed": false,
          "ItemType": "ConfigurationProperties",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "InputArtifactDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-inputartifactdetails",
          "Required": true,
          "Type": "ArtifactDetails",
          "UpdateType": "Immutable"
        },
        "OutputArtifactDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-outputartifactdetails",
          "Required": true,
          "Type": "ArtifactDetails",
          "UpdateType": "Immutable"
        },
        "Provider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-provider",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-settings",
          "Required": false,
          "Type": "Settings",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::CodePipeline::Pipeline": {
      "Attributes": {
        "Version": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html",
      "Properties": {
        "ArtifactStore": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-artifactstore",
          "Required": false,
          "Type": "ArtifactStore",
          "UpdateType": "Mutable"
        },
        "ArtifactStores": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-artifactstores",
          "DuplicatesAllowed": false,
          "ItemType": "ArtifactStoreMap",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DisableInboundStageTransitions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-disableinboundstagetransitions",
          "DuplicatesAllowed": false,
          "ItemType": "StageTransition",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RestartExecutionOnUpdate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-restartexecutiononupdate",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Stages": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-stages",
          "DuplicatesAllowed": false,
          "ItemType": "StageDeclaration",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodePipeline::Webhook": {
      "Attributes": {
        "Url": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html",
      "Properties": {
        "Authentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-authentication",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CodePipelineWehbookAuthentication"
          }
        },
        "AuthenticationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-authenticationconfiguration",
          "Required": true,
          "Type": "WebhookAuthConfiguration",
          "UpdateType": "Mutable"
        },
        "Filters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-filters",
          "ItemType": "WebhookFilterRule",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RegisterWithThirdParty": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-registerwiththirdparty",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-targetaction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetPipeline": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-targetpipeline",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetPipelineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-targetpipelineversion",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeStar::GitHubRepository": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html",
      "Properties": {
        "Code": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-code",
          "Required": false,
          "Type": "Code",
          "UpdateType": "Mutable"
        },
        "ConnectionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-connectionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableIssues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-enableissues",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IsPrivate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-isprivate",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepositoryAccessToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositoryaccesstoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepositoryDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositorydescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RepositoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositoryname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RepositoryOwner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositoryowner",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeStarConnections::Connection": {
      "Attributes": {
        "ConnectionArn": {
          "PrimitiveType": "String"
        },
        "ConnectionStatus": {
          "PrimitiveType": "String"
        },
        "OwnerAccountId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html",
      "Properties": {
        "ConnectionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-connectionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeStarConnections::Connection.ConnectionName"
          }
        },
        "HostArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-hostarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::CodeStarConnections::Connection.HostArn"
          }
        },
        "ProviderType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-providertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::CodeStarNotifications::NotificationRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html",
      "Properties": {
        "DetailType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html#cfn-codestarnotifications-notificationrule-detailtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EventTypeIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html#cfn-codestarnotifications-notificationrule-eventtypeids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html#cfn-codestarnotifications-notificationrule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Resource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html#cfn-codestarnotifications-notificationrule-resource",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html#cfn-codestarnotifications-notificationrule-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html#cfn-codestarnotifications-notificationrule-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html#cfn-codestarnotifications-notificationrule-targets",
          "ItemType": "Target",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::IdentityPool": {
      "Attributes": {
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html",
      "Properties": {
        "AllowClassicFlow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-allowclassicflow",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AllowUnauthenticatedIdentities": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-allowunauthenticatedidentities",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "CognitoEvents": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitoevents",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CognitoIdentityProviders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitoidentityproviders",
          "ItemType": "CognitoIdentityProvider",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CognitoStreams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitostreams",
          "Required": false,
          "Type": "CognitoStreams",
          "UpdateType": "Mutable"
        },
        "DeveloperProviderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-developerprovidername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdentityPoolName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-identitypoolname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OpenIdConnectProviderARNs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-openidconnectproviderarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PushSync": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-pushsync",
          "Required": false,
          "Type": "PushSync",
          "UpdateType": "Mutable"
        },
        "SamlProviderARNs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-samlproviderarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SupportedLoginProviders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-supportedloginproviders",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::IdentityPoolRoleAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html",
      "Properties": {
        "IdentityPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-identitypoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RoleMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-rolemappings",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Roles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-roles",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPool": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ProviderName": {
          "PrimitiveType": "String"
        },
        "ProviderURL": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html",
      "Properties": {
        "AccountRecoverySetting": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-accountrecoverysetting",
          "Required": false,
          "Type": "AccountRecoverySetting",
          "UpdateType": "Mutable"
        },
        "AdminCreateUserConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-admincreateuserconfig",
          "Required": false,
          "Type": "AdminCreateUserConfig",
          "UpdateType": "Mutable"
        },
        "AliasAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-aliasattributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPool.AliasAttributes"
          }
        },
        "AutoVerifiedAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-autoverifiedattributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPool.UsernameAttributes"
          }
        },
        "DeviceConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-deviceconfiguration",
          "Required": false,
          "Type": "DeviceConfiguration",
          "UpdateType": "Mutable"
        },
        "EmailConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailconfiguration",
          "Required": false,
          "Type": "EmailConfiguration",
          "UpdateType": "Mutable"
        },
        "EmailVerificationMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailverificationmessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EmailVerificationSubject": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailverificationsubject",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnabledMfas": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-enabledmfas",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LambdaConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-lambdaconfig",
          "Required": false,
          "Type": "LambdaConfig",
          "UpdateType": "Mutable"
        },
        "MfaConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-mfaconfiguration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPool.MfaConfiguration"
          }
        },
        "Policies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-policies",
          "Required": false,
          "Type": "Policies",
          "UpdateType": "Mutable"
        },
        "Schema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-schema",
          "ItemType": "SchemaAttribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SmsAuthenticationMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsauthenticationmessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SmsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsconfiguration",
          "Required": false,
          "Type": "SmsConfiguration",
          "UpdateType": "Mutable"
        },
        "SmsVerificationMessage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsverificationmessage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolAddOns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpooladdons",
          "Required": false,
          "Type": "UserPoolAddOns",
          "UpdateType": "Mutable"
        },
        "UserPoolName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpoolname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpooltags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UsernameAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-usernameattributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPool.UsernameAttributes"
          }
        },
        "UsernameConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-usernameconfiguration",
          "Required": false,
          "Type": "UsernameConfiguration",
          "UpdateType": "Mutable"
        },
        "VerificationMessageTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-verificationmessagetemplate",
          "Required": false,
          "Type": "VerificationMessageTemplate",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolClient": {
      "Attributes": {
        "ClientSecret": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html",
      "Properties": {
        "AccessTokenValidity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-accesstokenvalidity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AllowedOAuthFlows": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-allowedoauthflows",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AllowedOAuthFlowsUserPoolClient": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-allowedoauthflowsuserpoolclient",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AllowedOAuthScopes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-allowedoauthscopes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AnalyticsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-analyticsconfiguration",
          "Required": false,
          "Type": "AnalyticsConfiguration",
          "UpdateType": "Mutable"
        },
        "CallbackURLs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-callbackurls",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ClientName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-clientname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultRedirectURI": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-defaultredirecturi",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExplicitAuthFlows": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-explicitauthflows",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPoolClient.ExplicitAuthFlows"
          }
        },
        "GenerateSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-generatesecret",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IdTokenValidity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-idtokenvalidity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogoutURLs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-logouturls",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PreventUserExistenceErrors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-preventuserexistenceerrors",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReadAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-readattributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RefreshTokenValidity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-refreshtokenvalidity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPoolClient.RefreshTokenValidity"
          }
        },
        "SupportedIdentityProviders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-supportedidentityproviders",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TokenValidityUnits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-tokenvalidityunits",
          "Required": false,
          "Type": "TokenValidityUnits",
          "UpdateType": "Mutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "WriteAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-writeattributes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Cognito::UserPoolDomain": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html",
      "Properties": {
        "CustomDomainConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html#cfn-cognito-userpooldomain-customdomainconfig",
          "Required": false,
          "Type": "CustomDomainConfigType",
          "UpdateType": "Mutable"
        },
        "Domain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html#cfn-cognito-userpooldomain-domain",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html#cfn-cognito-userpooldomain-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cognito::UserPoolGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Precedence": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-precedence",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cognito::UserPoolIdentityProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html",
      "Properties": {
        "AttributeMapping": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-attributemapping",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdpIdentifiers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-idpidentifiers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ProviderDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providerdetails",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProviderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProviderType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providertype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cognito::UserPoolResourceServer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html",
      "Properties": {
        "Identifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-identifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Scopes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-scopes",
          "ItemType": "ResourceServerScopeType",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cognito::UserPoolRiskConfigurationAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html",
      "Properties": {
        "AccountTakeoverRiskConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfiguration",
          "Required": false,
          "Type": "AccountTakeoverRiskConfigurationType",
          "UpdateType": "Mutable"
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CompromisedCredentialsRiskConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfiguration",
          "Required": false,
          "Type": "CompromisedCredentialsRiskConfigurationType",
          "UpdateType": "Mutable"
        },
        "RiskExceptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfiguration",
          "Required": false,
          "Type": "RiskExceptionConfigurationType",
          "UpdateType": "Mutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cognito::UserPoolUICustomizationAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html",
      "Properties": {
        "CSS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-css",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cognito::UserPoolUser": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html",
      "Properties": {
        "ClientMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-clientmetadata",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DesiredDeliveryMediums": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-desireddeliverymediums",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPoolUser.DesiredDeliveryMediums"
          }
        },
        "ForceAliasCreation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-forcealiascreation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MessageAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-messageaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Cognito::UserPoolUser.MessageAction"
          }
        },
        "UserAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userattributes",
          "ItemType": "AttributeType",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ValidationData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-validationdata",
          "ItemType": "AttributeType",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Cognito::UserPoolUserToGroupAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html",
      "Properties": {
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-groupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "UserPoolId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-userpoolid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Config::AggregationAuthorization": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html",
      "Properties": {
        "AuthorizedAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-authorizedaccountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AuthorizedAwsRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-authorizedawsregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Region"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigRule": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Compliance.Type": {
          "PrimitiveType": "String"
        },
        "ConfigRuleId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html",
      "Properties": {
        "ConfigRuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-configrulename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigRule.Description"
          }
        },
        "InputParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-inputparameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumExecutionFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-maximumexecutionfrequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConfigRule.MaximumExecutionFrequency"
          }
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-scope",
          "Required": false,
          "Type": "Scope",
          "UpdateType": "Mutable"
        },
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-source",
          "Required": true,
          "Type": "Source",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigurationAggregator": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html",
      "Properties": {
        "AccountAggregationSources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-accountaggregationsources",
          "ItemType": "AccountAggregationSource",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ConfigurationAggregatorName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-configurationaggregatorname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "OrganizationAggregationSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-organizationaggregationsource",
          "Required": false,
          "Type": "OrganizationAggregationSource",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConfigurationRecorder": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RecordingGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-recordinggroup",
          "Required": false,
          "Type": "RecordingGroup",
          "UpdateType": "Mutable"
        },
        "RoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::ConformancePack": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html",
      "Properties": {
        "ConformancePackInputParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html#cfn-config-conformancepack-conformancepackinputparameters",
          "ItemType": "ConformancePackInputParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ConformancePackName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html#cfn-config-conformancepack-conformancepackname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Config::ConformancePack.ConformancePackName"
          }
        },
        "DeliveryS3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html#cfn-config-conformancepack-deliverys3bucket",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeliveryS3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html#cfn-config-conformancepack-deliverys3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TemplateBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html#cfn-config-conformancepack-templatebody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConformancePack.TemplateBody"
          }
        },
        "TemplateS3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html#cfn-config-conformancepack-templates3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::ConformancePack.TemplateS3Uri"
          }
        }
      }
    },
    "AWS::Config::DeliveryChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html",
      "Properties": {
        "ConfigSnapshotDeliveryProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties",
          "Required": false,
          "Type": "ConfigSnapshotDeliveryProperties",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "S3BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-s3bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "S3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-s3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnsTopicARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-snstopicarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::OrganizationConfigRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html",
      "Properties": {
        "ExcludedAccounts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-excludedaccounts",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OrganizationConfigRuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationconfigrulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "OrganizationCustomRuleMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata",
          "Required": false,
          "Type": "OrganizationCustomRuleMetadata",
          "UpdateType": "Mutable"
        },
        "OrganizationManagedRuleMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata",
          "Required": false,
          "Type": "OrganizationManagedRuleMetadata",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::OrganizationConformancePack": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html",
      "Properties": {
        "ConformancePackInputParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html#cfn-config-organizationconformancepack-conformancepackinputparameters",
          "ItemType": "ConformancePackInputParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DeliveryS3Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html#cfn-config-organizationconformancepack-deliverys3bucket",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeliveryS3KeyPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html#cfn-config-organizationconformancepack-deliverys3keyprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExcludedAccounts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html#cfn-config-organizationconformancepack-excludedaccounts",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "OrganizationConformancePackName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html#cfn-config-organizationconformancepack-organizationconformancepackname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Config::OrganizationConformancePack.OrganizationConformancePackName"
          }
        },
        "TemplateBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html#cfn-config-organizationconformancepack-templatebody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::OrganizationConformancePack.TemplateBody"
          }
        },
        "TemplateS3Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html#cfn-config-organizationconformancepack-templates3uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::OrganizationConformancePack.TemplateS3Uri"
          }
        }
      }
    },
    "AWS::Config::RemediationConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html",
      "Properties": {
        "Automatic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-automatic",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConfigRuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-configrulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ExecutionControls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-executioncontrols",
          "Required": false,
          "Type": "ExecutionControls",
          "UpdateType": "Mutable"
        },
        "MaximumAutomaticAttempts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-maximumautomaticattempts",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-parameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-resourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RetryAttemptSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-retryattemptseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-targetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-targettype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-targetversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Config::StoredQuery": {
      "Attributes": {
        "QueryArn": {
          "PrimitiveType": "String"
        },
        "QueryId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html",
      "Properties": {
        "QueryDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html#cfn-config-storedquery-querydescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::StoredQuery.QueryDescription"
          }
        },
        "QueryExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html#cfn-config-storedquery-queryexpression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Config::StoredQuery.QueryExpression"
          }
        },
        "QueryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html#cfn-config-storedquery-queryname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Config::StoredQuery.QueryName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html#cfn-config-storedquery-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DAX::Cluster": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ClusterDiscoveryEndpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html",
      "Properties": {
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-availabilityzones",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ClusterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clustername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IAMRoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-iamrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NodeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-nodetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NotificationTopicARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-notificationtopicarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-parametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplicationFactor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-replicationfactor",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SSESpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-ssespecification",
          "Required": false,
          "Type": "SSESpecification",
          "UpdateType": "Immutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-subnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DAX::ParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ParameterNameValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parameternamevalues",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DAX::SubnetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DLM::LifecyclePolicy": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-executionrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PolicyDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-policydetails",
          "Required": false,
          "Type": "PolicyDetails",
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-state",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Default::Default.EnabledState"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::Certificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html",
      "Properties": {
        "CertificateIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificateidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CertificatePem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatepem",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CertificateWallet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatewallet",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DMS::Endpoint": {
      "Attributes": {
        "ExternalId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html",
      "Properties": {
        "CertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-certificatearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DocDbSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-docdbsettings",
          "Required": false,
          "Type": "DocDbSettings",
          "UpdateType": "Mutable"
        },
        "DynamoDbSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-dynamodbsettings",
          "Required": false,
          "Type": "DynamoDbSettings",
          "UpdateType": "Mutable"
        },
        "ElasticsearchSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-elasticsearchsettings",
          "Required": false,
          "Type": "ElasticsearchSettings",
          "UpdateType": "Mutable"
        },
        "EndpointIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-endpointidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndpointType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-endpointtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "DmsEndpointType"
          }
        },
        "EngineName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-enginename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "DmsEndpointEngineName"
          }
        },
        "ExtraConnectionAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-extraconnectionattributes",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IbmDb2Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-ibmdb2settings",
          "Required": false,
          "Type": "IbmDb2Settings",
          "UpdateType": "Mutable"
        },
        "KafkaSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-kafkasettings",
          "Required": false,
          "Type": "KafkaSettings",
          "UpdateType": "Mutable"
        },
        "KinesisSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-kinesissettings",
          "Required": false,
          "Type": "KinesisSettings",
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MicrosoftSqlServerSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-microsoftsqlserversettings",
          "Required": false,
          "Type": "MicrosoftSqlServerSettings",
          "UpdateType": "Mutable"
        },
        "MongoDbSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-mongodbsettings",
          "Required": false,
          "Type": "MongoDbSettings",
          "UpdateType": "Mutable"
        },
        "MySqlSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-mysqlsettings",
          "Required": false,
          "Type": "MySqlSettings",
          "UpdateType": "Mutable"
        },
        "NeptuneSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-neptunesettings",
          "Required": false,
          "Type": "NeptuneSettings",
          "UpdateType": "Mutable"
        },
        "OracleSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-oraclesettings",
          "Required": false,
          "Type": "OracleSettings",
          "UpdateType": "Mutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-password",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PostgreSqlSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-postgresqlsettings",
          "Required": false,
          "Type": "PostgreSqlSettings",
          "UpdateType": "Mutable"
        },
        "RedshiftSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-redshiftsettings",
          "Required": false,
          "Type": "RedshiftSettings",
          "UpdateType": "Mutable"
        },
        "S3Settings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-s3settings",
          "Required": false,
          "Type": "S3Settings",
          "UpdateType": "Mutable"
        },
        "ServerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-servername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SslMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-sslmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "DmsEndpointSslMode"
          }
        },
        "SybaseSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-sybasesettings",
          "Required": false,
          "Type": "SybaseSettings",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Username": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::EventSubscription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventCategories": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-eventcategories",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SnsTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-snstopicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SourceIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-sourceids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "SourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-sourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubscriptionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-subscriptionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DMS::ReplicationInstance": {
      "Attributes": {
        "ReplicationInstancePrivateIpAddresses": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "ReplicationInstancePublicIpAddresses": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html",
      "Properties": {
        "AllocatedStorage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-allocatedstorage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AllowMajorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-allowmajorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AutoMinorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-autominorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MultiAZ": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-multiaz",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PubliclyAccessible": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-publiclyaccessible",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReplicationInstanceClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-replicationinstanceclass",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ReplicationInstanceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-replicationinstanceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplicationSubnetGroupIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-replicationsubnetgroupidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-vpcsecuritygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DMS::ReplicationSubnetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html",
      "Properties": {
        "ReplicationSubnetGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-replicationsubnetgroupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ReplicationSubnetGroupIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-replicationsubnetgroupidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DMS::ReplicationTask": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html",
      "Properties": {
        "CdcStartPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-cdcstartposition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CdcStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-cdcstarttime",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CdcStopPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-cdcstopposition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MigrationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-migrationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ReplicationInstanceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-replicationinstancearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ReplicationTaskIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-replicationtaskidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplicationTaskSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-replicationtasksettings",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceEndpointArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-sourceendpointarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TableMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-tablemappings",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "TargetEndpointArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-targetendpointarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TaskData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-taskdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataBrew::Dataset": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html",
      "Properties": {
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html#cfn-databrew-dataset-format",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Dataset.Format"
          }
        },
        "FormatOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html#cfn-databrew-dataset-formatoptions",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Input": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html#cfn-databrew-dataset-input",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html#cfn-databrew-dataset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Dataset.Name"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html#cfn-databrew-dataset-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DataBrew::Job": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html",
      "Properties": {
        "DatasetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-datasetname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.DatasetName"
          }
        },
        "EncryptionKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-encryptionkeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.EncryptionKeyArn"
          }
        },
        "EncryptionMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-encryptionmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.EncryptionMode"
          }
        },
        "JobSample": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-jobsample",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogSubscription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-logsubscription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.LogSubscription"
          }
        },
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-maxcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-maxretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.Name"
          }
        },
        "OutputLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-outputlocation",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Outputs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-outputs",
          "ItemType": "Output",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ProjectName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-projectname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.ProjectName"
          }
        },
        "Recipe": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-recipe",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-timeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html#cfn-databrew-job-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Job.Type"
          }
        }
      }
    },
    "AWS::DataBrew::Project": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html",
      "Properties": {
        "DatasetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html#cfn-databrew-project-datasetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Project.DatasetName"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html#cfn-databrew-project-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Project.Name"
          }
        },
        "RecipeName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html#cfn-databrew-project-recipename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Project.RecipeName"
          }
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html#cfn-databrew-project-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Sample": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html#cfn-databrew-project-sample",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html#cfn-databrew-project-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DataBrew::Recipe": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html#cfn-databrew-recipe-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html#cfn-databrew-recipe-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Recipe.Name"
          }
        },
        "Steps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html#cfn-databrew-recipe-steps",
          "ItemType": "RecipeStep",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html#cfn-databrew-recipe-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DataBrew::Schedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html",
      "Properties": {
        "CronExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html#cfn-databrew-schedule-cronexpression",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Schedule.CronExpression"
          }
        },
        "JobNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html#cfn-databrew-schedule-jobnames",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Schedule.JobNames"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html#cfn-databrew-schedule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataBrew::Schedule.Name"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html#cfn-databrew-schedule-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DataSync::Agent": {
      "Attributes": {
        "AgentArn": {
          "PrimitiveType": "String"
        },
        "EndpointType": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html",
      "Properties": {
        "ActivationKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-activationkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::Agent.ActivationKey"
          }
        },
        "AgentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-agentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Agent.AgentName"
          }
        },
        "SecurityGroupArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-securitygrouparns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::Agent.SecurityGroupArns"
          }
        },
        "SubnetArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-subnetarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::Agent.SubnetArns"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcEndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-vpcendpointid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::Agent.VpcEndpointId"
          }
        }
      }
    },
    "AWS::DataSync::LocationEFS": {
      "Attributes": {
        "LocationArn": {
          "PrimitiveType": "String"
        },
        "LocationUri": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html",
      "Properties": {
        "Ec2Config": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-ec2config",
          "Required": true,
          "Type": "Ec2Config",
          "UpdateType": "Immutable"
        },
        "EfsFilesystemArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-efsfilesystemarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationEFS.EfsFilesystemArn"
          }
        },
        "Subdirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-subdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataSync::LocationFSxWindows": {
      "Attributes": {
        "LocationArn": {
          "PrimitiveType": "String"
        },
        "LocationUri": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html",
      "Properties": {
        "Domain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-domain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationFSxWindows.Domain"
          }
        },
        "FsxFilesystemArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-fsxfilesystemarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationFSxWindows.FsxFilesystemArn"
          }
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationFSxWindows.Password"
          }
        },
        "SecurityGroupArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-securitygrouparns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationFSxWindows.SecurityGroupArns"
          }
        },
        "Subdirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-subdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "User": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-user",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationFSxWindows.User"
          }
        }
      }
    },
    "AWS::DataSync::LocationNFS": {
      "Attributes": {
        "LocationArn": {
          "PrimitiveType": "String"
        },
        "LocationUri": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html",
      "Properties": {
        "MountOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-mountoptions",
          "Required": false,
          "Type": "MountOptions",
          "UpdateType": "Immutable"
        },
        "OnPremConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-onpremconfig",
          "Required": true,
          "Type": "OnPremConfig",
          "UpdateType": "Immutable"
        },
        "ServerHostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-serverhostname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationNFS.ServerHostname"
          }
        },
        "Subdirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-subdirectory",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataSync::LocationObjectStorage": {
      "Attributes": {
        "LocationArn": {
          "PrimitiveType": "String"
        },
        "LocationUri": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html",
      "Properties": {
        "AccessKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-accesskey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationObjectStorage.AccessKey"
          }
        },
        "AgentArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-agentarns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationObjectStorage.AgentArns"
          }
        },
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SecretKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-secretkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationObjectStorage.SecretKey"
          }
        },
        "ServerHostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-serverhostname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationObjectStorage.ServerHostname"
          }
        },
        "ServerPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-serverport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationObjectStorage.ServerPort"
          }
        },
        "ServerProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-serverprotocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationObjectStorage.ServerProtocol"
          }
        },
        "Subdirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-subdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataSync::LocationS3": {
      "Attributes": {
        "LocationArn": {
          "PrimitiveType": "String"
        },
        "LocationUri": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html",
      "Properties": {
        "S3BucketArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-s3bucketarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationS3.S3BucketArn"
          }
        },
        "S3Config": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-s3config",
          "Required": true,
          "Type": "S3Config",
          "UpdateType": "Immutable"
        },
        "S3StorageClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-s3storageclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationS3.S3StorageClass"
          }
        },
        "Subdirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-subdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DataSync::LocationSMB": {
      "Attributes": {
        "LocationArn": {
          "PrimitiveType": "String"
        },
        "LocationUri": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html",
      "Properties": {
        "AgentArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-agentarns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationSMB.AgentArns"
          }
        },
        "Domain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-domain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationSMB.Domain"
          }
        },
        "MountOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-mountoptions",
          "Required": false,
          "Type": "MountOptions",
          "UpdateType": "Immutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationSMB.Password"
          }
        },
        "ServerHostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-serverhostname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationSMB.ServerHostname"
          }
        },
        "Subdirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-subdirectory",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "User": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-user",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::LocationSMB.User"
          }
        }
      }
    },
    "AWS::DataSync::Task": {
      "Attributes": {
        "DestinationNetworkInterfaceArns": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "ErrorCode": {
          "PrimitiveType": "String"
        },
        "ErrorDetail": {
          "PrimitiveType": "String"
        },
        "SourceNetworkInterfaceArns": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "Status": {
          "PrimitiveType": "String"
        },
        "TaskArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html",
      "Properties": {
        "CloudWatchLogGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-cloudwatchloggrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.CloudWatchLogGroupArn"
          }
        },
        "DestinationLocationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-destinationlocationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.DestinationLocationArn"
          }
        },
        "Excludes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-excludes",
          "ItemType": "FilterRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.Name"
          }
        },
        "Options": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-options",
          "Required": false,
          "Type": "Options",
          "UpdateType": "Mutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-schedule",
          "Required": false,
          "Type": "TaskSchedule",
          "UpdateType": "Mutable"
        },
        "SourceLocationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-sourcelocationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::DataSync::Task.SourceLocationArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Detective::Graph": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-graph.html",
      "Properties": {}
    },
    "AWS::Detective::MemberInvitation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html",
      "Properties": {
        "DisableEmailNotification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html#cfn-detective-memberinvitation-disableemailnotification",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GraphArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html#cfn-detective-memberinvitation-grapharn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Detective::MemberInvitation.GraphArn"
          }
        },
        "MemberEmailAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html#cfn-detective-memberinvitation-memberemailaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Detective::MemberInvitation.MemberEmailAddress"
          }
        },
        "MemberId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html#cfn-detective-memberinvitation-memberid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Detective::MemberInvitation.MemberId"
          }
        },
        "Message": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html#cfn-detective-memberinvitation-message",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Detective::MemberInvitation.Message"
          }
        }
      }
    },
    "AWS::DirectoryService::MicrosoftAD": {
      "Attributes": {
        "Alias": {
          "PrimitiveType": "String"
        },
        "DnsIpAddresses": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html",
      "Properties": {
        "CreateAlias": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-createalias",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Edition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-edition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "MicrosoftADEdition"
          }
        },
        "EnableSso": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-enablesso",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ShortName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-shortname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-vpcsettings",
          "Required": true,
          "Type": "VpcSettings",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DirectoryService::SimpleAD": {
      "Attributes": {
        "Alias": {
          "PrimitiveType": "String"
        },
        "DnsIpAddresses": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html",
      "Properties": {
        "CreateAlias": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-createalias",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EnableSso": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-enablesso",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Password": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-password",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ShortName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-shortname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-size",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "SimpleADSize"
          }
        },
        "VpcSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-vpcsettings",
          "Required": true,
          "Type": "VpcSettings",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::DocDB::DBCluster": {
      "Attributes": {
        "ClusterResourceId": {
          "PrimitiveType": "String"
        },
        "Endpoint": {
          "PrimitiveType": "String"
        },
        "Port": {
          "PrimitiveType": "String"
        },
        "ReadEndpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html",
      "Properties": {
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-availabilityzones",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "BackupRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-backupretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DocDB::DBCluster.BackupRetentionPeriod"
          }
        },
        "DBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-dbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBClusterParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-dbclusterparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DeletionProtection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-deletionprotection",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableCloudwatchLogsExports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-enablecloudwatchlogsexports",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "DocumentDBEngineVersion"
          }
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MasterUserPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-masteruserpassword",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MasterUsername": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-masterusername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredBackupWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-preferredbackupwindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-snapshotidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StorageEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-storageencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-vpcsecuritygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DocDB::DBClusterParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Family": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-family",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-parameters",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DocDB::DBInstance": {
      "Attributes": {
        "Endpoint": {
          "PrimitiveType": "String"
        },
        "Port": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html",
      "Properties": {
        "AutoMinorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-autominorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-dbclusteridentifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DBInstanceClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-dbinstanceclass",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "DocumentDBInstanceClass"
          }
        },
        "DBInstanceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-dbinstanceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DocDB::DBSubnetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html",
      "Properties": {
        "DBSubnetGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-dbsubnetgroupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::DynamoDB::Table": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "StreamArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html",
      "Properties": {
        "AttributeDefinitions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-attributedef",
          "DuplicatesAllowed": true,
          "ItemType": "AttributeDefinition",
          "Required": true,
          "Type": "List",
          "UpdateType": "Conditional"
        },
        "BillingMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-billingmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::DynamoDB::Table.BillingMode"
          }
        },
        "GlobalSecondaryIndexes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-gsi",
          "DuplicatesAllowed": true,
          "ItemType": "GlobalSecondaryIndex",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "KeySchema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-keyschema",
          "DuplicatesAllowed": false,
          "ItemType": "KeySchema",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "KinesisStreamSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-kinesisstreamspecification",
          "Required": false,
          "Type": "KinesisStreamSpecification",
          "UpdateType": "Mutable"
        },
        "LocalSecondaryIndexes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-lsi",
          "DuplicatesAllowed": true,
          "ItemType": "LocalSecondaryIndex",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "PointInTimeRecoverySpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-pointintimerecoveryspecification",
          "Required": false,
          "Type": "PointInTimeRecoverySpecification",
          "UpdateType": "Mutable"
        },
        "ProvisionedThroughput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-provisionedthroughput",
          "Required": false,
          "Type": "ProvisionedThroughput",
          "UpdateType": "Mutable"
        },
        "SSESpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-ssespecification",
          "Required": false,
          "Type": "SSESpecification",
          "UpdateType": "Mutable"
        },
        "StreamSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-streamspecification",
          "Required": false,
          "Type": "StreamSpecification",
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tablename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TimeToLiveSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-timetolivespecification",
          "Required": false,
          "Type": "TimeToLiveSpecification",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::CapacityReservation": {
      "Attributes": {
        "AvailabilityZone": {
          "PrimitiveType": "String"
        },
        "AvailableInstanceCount": {
          "PrimitiveType": "Integer"
        },
        "InstanceType": {
          "PrimitiveType": "String"
        },
        "Tenancy": {
          "PrimitiveType": "String"
        },
        "TotalInstanceCount": {
          "PrimitiveType": "Integer"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-availabilityzone",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EndDate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-enddate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndDateType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-enddatetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EC2CapacityReservationEndDateType"
          }
        },
        "EphemeralStorage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-ephemeralstorage",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instancecount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceMatchCriteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instancematchcriteria",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EC2CapacityReservationInstanceMatchCriteria"
          }
        },
        "InstancePlatform": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instanceplatform",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EC2CapacityReservationInstancePlatform"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2InstanceType"
          }
        },
        "TagSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-tagspecifications",
          "ItemType": "TagSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-tenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "PlacementTenancy"
          }
        }
      }
    },
    "AWS::EC2::ClientVpnAuthorizationRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html",
      "Properties": {
        "AccessGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-accessgroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AuthorizeAllGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-authorizeallgroups",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClientVpnEndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-clientvpnendpointid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TargetNetworkCidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-targetnetworkcidr",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        }
      }
    },
    "AWS::EC2::ClientVpnEndpoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html",
      "Properties": {
        "AuthenticationOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-authenticationoptions",
          "ItemType": "ClientAuthenticationRequest",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ClientCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-clientcidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "ClientConnectOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-clientconnectoptions",
          "Required": false,
          "Type": "ClientConnectOptions",
          "UpdateType": "Mutable"
        },
        "ConnectionLogOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-connectionlogoptions",
          "Required": true,
          "Type": "ConnectionLogOptions",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DnsServers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-dnsservers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SelfServicePortal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-selfserviceportal",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServerCertificateArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-servercertificatearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SplitTunnel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-splittunnel",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TagSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-tagspecifications",
          "ItemType": "TagSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "TransportProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-transportprotocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpnPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-vpnport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::ClientVpnRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html",
      "Properties": {
        "ClientVpnEndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-clientvpnendpointid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DestinationCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-destinationcidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TargetVpcSubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-targetvpcsubnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::ClientVpnTargetNetworkAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html",
      "Properties": {
        "ClientVpnEndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html#cfn-ec2-clientvpntargetnetworkassociation-clientvpnendpointid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html#cfn-ec2-clientvpntargetnetworkassociation-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::CustomerGateway": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html",
      "Properties": {
        "BgpAsn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-bgpasn",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "IpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-ipaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CustomerGatewayType"
          }
        }
      }
    },
    "AWS::EC2::DHCPOptions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html",
      "Properties": {
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-domainname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DomainNameServers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-domainnameservers",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "NetbiosNameServers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-netbiosnameservers",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "NetbiosNodeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-netbiosnodetype",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "DHCPOptionsNetbiosNodeType"
          }
        },
        "NtpServers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-ntpservers",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::EC2Fleet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html",
      "Properties": {
        "ExcessCapacityTerminationPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-excesscapacityterminationpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2FleetExcessCapacityTerminationPolicy"
          }
        },
        "LaunchTemplateConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-launchtemplateconfigs",
          "ItemType": "FleetLaunchTemplateConfigRequest",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "OnDemandOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-ondemandoptions",
          "Required": false,
          "Type": "OnDemandOptionsRequest",
          "UpdateType": "Immutable"
        },
        "ReplaceUnhealthyInstances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-replaceunhealthyinstances",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SpotOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-spotoptions",
          "Required": false,
          "Type": "SpotOptionsRequest",
          "UpdateType": "Immutable"
        },
        "TagSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-tagspecifications",
          "ItemType": "TagSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "TargetCapacitySpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-targetcapacityspecification",
          "Required": true,
          "Type": "TargetCapacitySpecificationRequest",
          "UpdateType": "Mutable"
        },
        "TerminateInstancesWithExpiration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-terminateinstanceswithexpiration",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2FleetType"
          }
        },
        "ValidFrom": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-validfrom",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ValidUntil": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-validuntil",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::EIP": {
      "Attributes": {
        "AllocationId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html",
      "Properties": {
        "Domain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-domain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "Ec2ElasticIpDomain"
          }
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "PublicIpv4Pool": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-publicipv4pool",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::EIPAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html",
      "Properties": {
        "AllocationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-allocationid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional",
          "Value": {
            "ValueType": "AWS::EC2::EIP.AllocationId"
          }
        },
        "EIP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-eip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-PrivateIpAddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::EgressOnlyInternetGateway": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html",
      "Properties": {
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html#cfn-ec2-egressonlyinternetgateway-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::FlowLog": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html",
      "Properties": {
        "DeliverLogsPermissionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-deliverlogspermissionarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LogDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-logdestination",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LogDestinationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-logdestinationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::FlowLog.LogDestinationType"
          }
        },
        "LogFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-logformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-loggroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MaxAggregationInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-maxaggregationinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::FlowLog.ResourceType"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TrafficType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-traffictype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::FlowLog.TrafficType"
          }
        }
      }
    },
    "AWS::EC2::GatewayRouteTableAssociation": {
      "Attributes": {
        "AssociationId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html",
      "Properties": {
        "GatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html#cfn-ec2-gatewayroutetableassociation-gatewayid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html#cfn-ec2-gatewayroutetableassociation-routetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Host": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html",
      "Properties": {
        "AutoPlacement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-autoplacement",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "Ec2HostAutoPlacement"
          }
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-availabilityzone",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "HostRecovery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-hostrecovery",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::Instance": {
      "Attributes": {
        "AvailabilityZone": {
          "PrimitiveType": "String"
        },
        "PrivateDnsName": {
          "PrimitiveType": "String"
        },
        "PrivateIp": {
          "PrimitiveType": "String"
        },
        "PublicDnsName": {
          "PrimitiveType": "String"
        },
        "PublicIp": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html",
      "Properties": {
        "AdditionalInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-additionalinfo",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "Affinity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-affinity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional",
          "Value": {
            "ValueType": "AWS::EC2::Instance.Affinity"
          }
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "BlockDeviceMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-blockdevicemappings",
          "DuplicatesAllowed": true,
          "ItemType": "BlockDeviceMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional"
        },
        "CpuOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-cpuoptions",
          "Required": false,
          "Type": "CpuOptions",
          "UpdateType": "Immutable"
        },
        "CreditSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-creditspecification",
          "Required": false,
          "Type": "CreditSpecification",
          "UpdateType": "Mutable"
        },
        "DisableApiTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-disableapitermination",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "ElasticGpuSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-elasticgpuspecifications",
          "DuplicatesAllowed": false,
          "ItemType": "ElasticGpuSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ElasticInferenceAccelerators": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-elasticinferenceaccelerators",
          "DuplicatesAllowed": false,
          "ItemType": "ElasticInferenceAccelerator",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EnclaveOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-enclaveoptions",
          "Required": false,
          "Type": "EnclaveOptions",
          "UpdateType": "Immutable"
        },
        "HibernationOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-hibernationoptions",
          "Required": false,
          "Type": "HibernationOptions",
          "UpdateType": "Immutable"
        },
        "HostId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-hostid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "HostResourceGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-hostresourcegrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IamInstanceProfile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-iaminstanceprofile",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::InstanceProfile.Name"
          }
        },
        "ImageId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-imageid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceInitiatedShutdownBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-instanceinitiatedshutdownbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-instancetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional",
          "Value": {
            "ValueType": "Ec2InstanceType"
          }
        },
        "Ipv6AddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ipv6addresscount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Ipv6Addresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ipv6addresses",
          "DuplicatesAllowed": true,
          "ItemType": "InstanceIpv6Address",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "KernelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-kernelid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "KeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-keyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "KeyPair"
          }
        },
        "LaunchTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-launchtemplate",
          "Required": false,
          "Type": "LaunchTemplateSpecification",
          "UpdateType": "Immutable"
        },
        "LicenseSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-licensespecifications",
          "DuplicatesAllowed": false,
          "ItemType": "LicenseSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Monitoring": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-monitoring",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkInterfaces": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-networkinterfaces",
          "DuplicatesAllowed": true,
          "ItemType": "NetworkInterface",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "PlacementGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-placementgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "PlacementGroup"
          }
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-privateipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "PrivateIpAddress"
          }
        },
        "RamdiskId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ramdiskid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-securitygroupids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-securitygroups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.GroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.GroupId"
          }
        },
        "SourceDestCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-sourcedestcheck",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SsmAssociations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ssmassociations",
          "DuplicatesAllowed": true,
          "ItemType": "SsmAssociation",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "SubnetId"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-tenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional",
          "Value": {
            "ValueType": "Ec2Tenancy"
          }
        },
        "UserData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-userdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "Volumes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-volumes",
          "DuplicatesAllowed": true,
          "ItemType": "Volume",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::InternetGateway": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html",
      "Properties": {
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html#cfn-ec2-internetgateway-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LaunchTemplate": {
      "Attributes": {
        "DefaultVersionNumber": {
          "PrimitiveType": "String"
        },
        "LatestVersionNumber": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html",
      "Properties": {
        "LaunchTemplateData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#cfn-ec2-launchtemplate-launchtemplatedata",
          "Required": false,
          "Type": "LaunchTemplateData",
          "UpdateType": "Mutable"
        },
        "LaunchTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#cfn-ec2-launchtemplate-launchtemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "LaunchTemplateName"
          }
        },
        "TagSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#cfn-ec2-launchtemplate-tagspecifications",
          "Required": false,
          "Type": "TagSpecifications",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::LocalGatewayRoute": {
      "Attributes": {
        "State": {
          "PrimitiveType": "String"
        },
        "Type": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html",
      "Properties": {
        "DestinationCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html#cfn-ec2-localgatewayroute-destinationcidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "LocalGatewayRouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html#cfn-ec2-localgatewayroute-localgatewayroutetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "LocalGatewayVirtualInterfaceGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html#cfn-ec2-localgatewayroute-localgatewayvirtualinterfacegroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::LocalGatewayRouteTableVPCAssociation": {
      "Attributes": {
        "LocalGatewayId": {
          "PrimitiveType": "String"
        },
        "LocalGatewayRouteTableVpcAssociationId": {
          "PrimitiveType": "String"
        },
        "State": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html",
      "Properties": {
        "LocalGatewayRouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html#cfn-ec2-localgatewayroutetablevpcassociation-localgatewayroutetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html#cfn-ec2-localgatewayroutetablevpcassociation-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html#cfn-ec2-localgatewayroutetablevpcassociation-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::NatGateway": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html",
      "Properties": {
        "AllocationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-allocationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkAcl": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html",
      "Properties": {
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::NetworkAclEntry": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html",
      "Properties": {
        "CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-cidrblock",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "Egress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-egress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Icmp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-icmp",
          "Required": false,
          "Type": "Icmp",
          "UpdateType": "Mutable"
        },
        "Ipv6CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-ipv6cidrblock",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkAclId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-networkaclid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PortRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-portrange",
          "Required": false,
          "Type": "PortRange",
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-protocol",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RuleAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-ruleaction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "NetworkAclRuleAction"
          }
        },
        "RuleNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-rulenumber",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "NetworkAclRuleNumber"
          }
        }
      }
    },
    "AWS::EC2::NetworkInsightsAnalysis": {
      "Attributes": {
        "AlternatePathHints": {
          "ItemType": "AlternatePathHint",
          "Type": "List"
        },
        "Explanations": {
          "ItemType": "Explanation",
          "Type": "List"
        },
        "ForwardPathComponents": {
          "ItemType": "PathComponent",
          "Type": "List"
        },
        "NetworkInsightsAnalysisArn": {
          "PrimitiveType": "String"
        },
        "NetworkInsightsAnalysisId": {
          "PrimitiveType": "String"
        },
        "NetworkPathFound": {
          "PrimitiveType": "Boolean"
        },
        "ReturnPathComponents": {
          "ItemType": "PathComponent",
          "Type": "List"
        },
        "StartDate": {
          "PrimitiveType": "String"
        },
        "Status": {
          "PrimitiveType": "String"
        },
        "StatusMessage": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html",
      "Properties": {
        "FilterInArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html#cfn-ec2-networkinsightsanalysis-filterinarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "NetworkInsightsPathId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html#cfn-ec2-networkinsightsanalysis-networkinsightspathid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html#cfn-ec2-networkinsightsanalysis-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInsightsPath": {
      "Attributes": {
        "CreatedDate": {
          "PrimitiveType": "String"
        },
        "NetworkInsightsPathArn": {
          "PrimitiveType": "String"
        },
        "NetworkInsightsPathId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html",
      "Properties": {
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-destination",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DestinationIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-destinationip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DestinationPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-destinationport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::NetworkInsightsPath.Protocol"
          }
        },
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-source",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SourceIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-sourceip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInterface": {
      "Attributes": {
        "PrimaryPrivateIpAddress": {
          "PrimitiveType": "String"
        },
        "SecondaryPrivateIpAddresses": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GroupSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-groupset",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InterfaceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-interfacetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Ipv6AddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-ipv6addresscount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Ipv6Addresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-ipv6addresses",
          "DuplicatesAllowed": false,
          "ItemType": "InstanceIpv6Address",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PrivateIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-privateipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PrivateIpAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-privateipaddresses",
          "DuplicatesAllowed": false,
          "ItemType": "PrivateIpAddressSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional"
        },
        "SecondaryPrivateIpAddressCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-secondaryprivateipcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceDestCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-sourcedestcheck",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInterfaceAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html",
      "Properties": {
        "DeleteOnTermination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-deleteonterm",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeviceIndex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-deviceindex",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-instanceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::NetworkInterfacePermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html",
      "Properties": {
        "AwsAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-awsaccountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Permission": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-permission",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "NetworkInterfacePermission"
          }
        }
      }
    },
    "AWS::EC2::PlacementGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html",
      "Properties": {
        "Strategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html#cfn-ec2-placementgroup-strategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "PlacementGroupStrategy"
          }
        }
      }
    },
    "AWS::EC2::PrefixList": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "OwnerId": {
          "PrimitiveType": "String"
        },
        "PrefixListId": {
          "PrimitiveType": "String"
        },
        "Version": {
          "PrimitiveType": "Integer"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html",
      "Properties": {
        "AddressFamily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-addressfamily",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::PrefixList.AddressFamily"
          }
        },
        "Entries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-entries",
          "ItemType": "Entry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MaxEntries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-maxentries",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::PrefixList.MaxEntries"
          }
        },
        "PrefixListName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-prefixlistname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::PrefixList.PrefixListName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Route": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html",
      "Properties": {
        "CarrierGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-carriergatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationcidrblock",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "DestinationIpv6CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationipv6cidrblock",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EgressOnlyInternetGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-egressonlyinternetgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-gatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LocalGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-localgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NatGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-natgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-routetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-transitgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcEndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcendpointid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcPeeringConnectionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcpeeringconnectionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::RouteTable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html",
      "Properties": {
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::SecurityGroup": {
      "Attributes": {
        "GroupId": {
          "PrimitiveType": "String"
        },
        "VpcId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html",
      "Properties": {
        "GroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-groupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::SecurityGroup.Description"
          }
        },
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroupEgress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupegress",
          "DuplicatesAllowed": true,
          "ItemType": "Egress",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecurityGroupIngress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupingress",
          "DuplicatesAllowed": true,
          "ItemType": "Ingress",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::SecurityGroupEgress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html",
      "Properties": {
        "CidrIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-cidrip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "CidrIpv6": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-cidripv6",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationPrefixListId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-destinationprefixlistid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DestinationSecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-destinationsecuritygroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "FromPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-fromport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-groupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "IpProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-ipprotocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ToPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-toport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::SecurityGroupIngress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html",
      "Properties": {
        "CidrIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-cidrip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "CidrIpv6": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-cidripv6",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FromPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-fromport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-groupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IpProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-ipprotocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SourcePrefixListId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-securitygroupingress-sourceprefixlistid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceSecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SourceSecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceSecurityGroupOwnerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupownerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ToPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-toport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::SpotFleet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html",
      "Properties": {
        "SpotFleetRequestConfigData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata",
          "Required": true,
          "Type": "SpotFleetRequestConfigData",
          "UpdateType": "Conditional"
        }
      }
    },
    "AWS::EC2::Subnet": {
      "Attributes": {
        "AvailabilityZone": {
          "PrimitiveType": "String"
        },
        "Ipv6CidrBlocks": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "NetworkAclAssociationId": {
          "PrimitiveType": "String"
        },
        "OutpostArn": {
          "PrimitiveType": "String"
        },
        "VpcId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html",
      "Properties": {
        "AssignIpv6AddressOnCreation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-assignipv6addressoncreation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-cidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AwsCidrIp"
          }
        },
        "Ipv6CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-ipv6cidrblock",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MapPublicIpOnLaunch": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-mappubliciponlaunch",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutpostArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-outpostarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-awsec2subnet-prop-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::SubnetCidrBlock": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html",
      "Properties": {
        "Ipv6CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-ipv6cidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "SubnetId"
          }
        }
      }
    },
    "AWS::EC2::SubnetNetworkAclAssociation": {
      "Attributes": {
        "AssociationId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html",
      "Properties": {
        "NetworkAclId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-networkaclid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-associationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::SubnetRouteTableAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html",
      "Properties": {
        "RouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-routetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TrafficMirrorFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NetworkServices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-networkservices",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::TrafficMirrorFilterRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-destinationcidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "DestinationPortRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-destinationportrange",
          "Required": false,
          "Type": "TrafficMirrorPortRange",
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-protocol",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RuleAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-ruleaction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RuleNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-rulenumber",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SourceCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-sourcecidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SourcePortRange": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-sourceportrange",
          "Required": false,
          "Type": "TrafficMirrorPortRange",
          "UpdateType": "Mutable"
        },
        "TrafficDirection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-trafficdirection",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TrafficMirrorFilterId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorfilterid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TrafficMirrorSession": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PacketLength": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-packetlength",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SessionNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-sessionnumber",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TrafficMirrorFilterId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-trafficmirrorfilterid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TrafficMirrorTargetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-trafficmirrortargetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VirtualNetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-virtualnetworkid",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::TrafficMirrorTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NetworkLoadBalancerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-networkloadbalancerarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::TransitGateway": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html",
      "Properties": {
        "AmazonSideAsn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-amazonsideasn",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AutoAcceptSharedAttachments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-autoacceptsharedattachments",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "TransitGatewayEnabled"
          }
        },
        "DefaultRouteTableAssociation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-defaultroutetableassociation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "TransitGatewayEnabled"
          }
        },
        "DefaultRouteTablePropagation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-defaultroutetablepropagation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "TransitGatewayEnabled"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DnsSupport": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-dnssupport",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "TransitGatewayEnabled"
          }
        },
        "MulticastSupport": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-multicastsupport",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "VpnEcmpSupport": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-vpnecmpsupport",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "TransitGatewayEnabled"
          }
        }
      }
    },
    "AWS::EC2::TransitGatewayAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html",
      "Properties": {
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "TransitGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-transitgatewayid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::TransitGatewayMulticastDomain": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "State": {
          "PrimitiveType": "String"
        },
        "TransitGatewayMulticastDomainArn": {
          "PrimitiveType": "String"
        },
        "TransitGatewayMulticastDomainId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html",
      "Properties": {
        "Options": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html#cfn-ec2-transitgatewaymulticastdomain-options",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html#cfn-ec2-transitgatewaymulticastdomain-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TransitGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html#cfn-ec2-transitgatewaymulticastdomain-transitgatewayid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TransitGatewayMulticastDomainAssociation": {
      "Attributes": {
        "ResourceId": {
          "PrimitiveType": "String"
        },
        "ResourceType": {
          "PrimitiveType": "String"
        },
        "State": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html",
      "Properties": {
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html#cfn-ec2-transitgatewaymulticastdomainassociation-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayAttachmentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html#cfn-ec2-transitgatewaymulticastdomainassociation-transitgatewayattachmentid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayMulticastDomainId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html#cfn-ec2-transitgatewaymulticastdomainassociation-transitgatewaymulticastdomainid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TransitGatewayMulticastGroupMember": {
      "Attributes": {
        "GroupMember": {
          "PrimitiveType": "Boolean"
        },
        "GroupSource": {
          "PrimitiveType": "Boolean"
        },
        "MemberType": {
          "PrimitiveType": "String"
        },
        "ResourceId": {
          "PrimitiveType": "String"
        },
        "ResourceType": {
          "PrimitiveType": "String"
        },
        "SourceType": {
          "PrimitiveType": "String"
        },
        "SubnetId": {
          "PrimitiveType": "String"
        },
        "TransitGatewayAttachmentId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html",
      "Properties": {
        "GroupIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html#cfn-ec2-transitgatewaymulticastgroupmember-groupipaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html#cfn-ec2-transitgatewaymulticastgroupmember-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayMulticastDomainId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html#cfn-ec2-transitgatewaymulticastgroupmember-transitgatewaymulticastdomainid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TransitGatewayMulticastGroupSource": {
      "Attributes": {
        "GroupMember": {
          "PrimitiveType": "Boolean"
        },
        "GroupSource": {
          "PrimitiveType": "Boolean"
        },
        "MemberType": {
          "PrimitiveType": "String"
        },
        "ResourceId": {
          "PrimitiveType": "String"
        },
        "ResourceType": {
          "PrimitiveType": "String"
        },
        "SourceType": {
          "PrimitiveType": "String"
        },
        "SubnetId": {
          "PrimitiveType": "String"
        },
        "TransitGatewayAttachmentId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html",
      "Properties": {
        "GroupIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html#cfn-ec2-transitgatewaymulticastgroupsource-groupipaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NetworkInterfaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html#cfn-ec2-transitgatewaymulticastgroupsource-networkinterfaceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayMulticastDomainId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html#cfn-ec2-transitgatewaymulticastgroupsource-transitgatewaymulticastdomainid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TransitGatewayRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html",
      "Properties": {
        "Blackhole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-blackhole",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DestinationCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-destinationcidrblock",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "TransitGatewayAttachmentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-transitgatewayattachmentid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TransitGatewayRouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-transitgatewayroutetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TransitGatewayRouteTable": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html",
      "Properties": {
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html#cfn-ec2-transitgatewayroutetable-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "TransitGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html#cfn-ec2-transitgatewayroutetable-transitgatewayid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TransitGatewayRouteTableAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html",
      "Properties": {
        "TransitGatewayAttachmentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html#cfn-ec2-transitgatewayroutetableassociation-transitgatewayattachmentid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayRouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html#cfn-ec2-transitgatewayroutetableassociation-transitgatewayroutetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::TransitGatewayRouteTablePropagation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html",
      "Properties": {
        "TransitGatewayAttachmentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html#cfn-ec2-transitgatewayroutetablepropagation-transitgatewayattachmentid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayRouteTableId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html#cfn-ec2-transitgatewayroutetablepropagation-transitgatewayroutetableid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::VPC": {
      "Attributes": {
        "CidrBlock": {
          "PrimitiveType": "String"
        },
        "CidrBlockAssociations": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "DefaultNetworkAcl": {
          "PrimitiveType": "String"
        },
        "DefaultSecurityGroup": {
          "PrimitiveType": "String"
        },
        "Ipv6CidrBlocks": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html",
      "Properties": {
        "CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-cidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AwsCidrIp"
          }
        },
        "EnableDnsHostnames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-EnableDnsHostnames",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableDnsSupport": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-EnableDnsSupport",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceTenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-instancetenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "PlacementTenancy"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::VPCCidrBlock": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html",
      "Properties": {
        "AmazonProvidedIpv6CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-amazonprovidedipv6cidrblock",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-cidrblock",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AwsCidrIp"
          }
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::VPCDHCPOptionsAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html",
      "Properties": {
        "DhcpOptionsId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-dhcpoptionsid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::VPCEndpoint": {
      "Attributes": {
        "CreationTimestamp": {
          "PrimitiveType": "String"
        },
        "DnsEntries": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "NetworkInterfaceIds": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html",
      "Properties": {
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-policydocument",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateDnsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-privatednsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RouteTableIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-routetableids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-securitygroupids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-servicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcEndpointType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-vpcendpointtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "VpcEndpointType"
          }
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::VPCEndpointService": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html",
      "Properties": {
        "AcceptanceRequired": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-acceptancerequired",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GatewayLoadBalancerArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-gatewayloadbalancerarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NetworkLoadBalancerArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-networkloadbalancerarns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::VPCEndpointServicePermissions": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html",
      "Properties": {
        "AllowedPrincipals": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html#cfn-ec2-vpcendpointservicepermissions-allowedprincipals",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ServiceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html#cfn-ec2-vpcendpointservicepermissions-serviceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::VPCGatewayAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html",
      "Properties": {
        "InternetGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-internetgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        },
        "VpnGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpngatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::VPCPeeringConnection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html",
      "Properties": {
        "PeerOwnerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peerownerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PeerRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peerregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PeerRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peerrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PeerVpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peervpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::EC2::VPNConnection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html",
      "Properties": {
        "CustomerGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-customergatewayid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "StaticRoutesOnly": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-StaticRoutesOnly",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TransitGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-transitgatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "VpnType"
          }
        },
        "VpnGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-vpngatewayid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpnTunnelOptionsSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-vpntunneloptionsspecifications",
          "DuplicatesAllowed": false,
          "ItemType": "VpnTunnelOptionsSpecification",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::VPNConnectionRoute": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html",
      "Properties": {
        "DestinationCidrBlock": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-cidrblock",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "VpnConnectionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-connectionid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EC2::VPNGateway": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html",
      "Properties": {
        "AmazonSideAsn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-amazonsideasn",
          "PrimitiveType": "Long",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "VpnType"
          }
        }
      }
    },
    "AWS::EC2::VPNGatewayRoutePropagation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html",
      "Properties": {
        "RouteTableIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-routetableids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpnGatewayId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-vpngatewayid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EC2::Volume": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html",
      "Properties": {
        "AutoEnableIO": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-autoenableio",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-availabilityzone",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MultiAttachEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-multiattachenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OutpostArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-outpostarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Size": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-size",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-snapshotid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Throughput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-throughput",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-volumetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EbsVolumeType"
          }
        }
      }
    },
    "AWS::EC2::VolumeAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html",
      "Properties": {
        "Device": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-device",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-instanceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VolumeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-volumeid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECR::RegistryPolicy": {
      "Attributes": {
        "RegistryId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html",
      "Properties": {
        "PolicyText": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html#cfn-ecr-registrypolicy-policytext",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECR::ReplicationConfiguration": {
      "Attributes": {
        "RegistryId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html",
      "Properties": {
        "ReplicationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html#cfn-ecr-replicationconfiguration-replicationconfiguration",
          "Required": true,
          "Type": "ReplicationConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECR::Repository": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html",
      "Properties": {
        "ImageScanningConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-imagescanningconfiguration",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageTagMutability": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-imagetagmutability",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ECR::Repository.ImageTagMutability"
          }
        },
        "LifecyclePolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-lifecyclepolicy",
          "Required": false,
          "Type": "LifecyclePolicy",
          "UpdateType": "Mutable"
        },
        "RepositoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositoryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECR::Repository.RepositoryName"
          }
        },
        "RepositoryPolicyText": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositorypolicytext",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::CapacityProvider": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html",
      "Properties": {
        "AutoScalingGroupProvider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html#cfn-ecs-capacityprovider-autoscalinggroupprovider",
          "Required": true,
          "Type": "AutoScalingGroupProvider",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html#cfn-ecs-capacityprovider-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html#cfn-ecs-capacityprovider-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Cluster": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html",
      "Properties": {
        "CapacityProviders": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-capacityproviders",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ClusterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-clustername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClusterSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-clustersettings",
          "ItemType": "ClusterSettings",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DefaultCapacityProviderStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-defaultcapacityproviderstrategy",
          "ItemType": "CapacityProviderStrategyItem",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::PrimaryTaskSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html",
      "Properties": {
        "Cluster": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html#cfn-ecs-primarytaskset-cluster",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Service": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html#cfn-ecs-primarytaskset-service",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TaskSetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html#cfn-ecs-primarytaskset-tasksetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::Service": {
      "Attributes": {
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html",
      "Properties": {
        "CapacityProviderStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-capacityproviderstrategy",
          "ItemType": "CapacityProviderStrategyItem",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Cluster": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-cluster",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DeploymentConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-deploymentconfiguration",
          "Required": false,
          "Type": "DeploymentConfiguration",
          "UpdateType": "Mutable"
        },
        "DeploymentController": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-deploymentcontroller",
          "Required": false,
          "Type": "DeploymentController",
          "UpdateType": "Immutable"
        },
        "DesiredCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-desiredcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableECSManagedTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-enableecsmanagedtags",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HealthCheckGracePeriodSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-healthcheckgraceperiodseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-launchtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::Service.LaunchType"
          }
        },
        "LoadBalancers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-loadbalancers",
          "ItemType": "LoadBalancer",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "NetworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-networkconfiguration",
          "Required": false,
          "Type": "NetworkConfiguration",
          "UpdateType": "Mutable"
        },
        "PlacementConstraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementconstraints",
          "ItemType": "PlacementConstraint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "PlacementStrategies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementstrategies",
          "ItemType": "PlacementStrategy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "PlatformVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-platformversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PropagateTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-propagatetags",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::Service.PropagateTags"
          }
        },
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-role",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.NameOrArn"
          }
        },
        "SchedulingStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-schedulingstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::Service.SchedulingStrategy"
          }
        },
        "ServiceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-servicearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-servicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ServiceRegistries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-serviceregistries",
          "ItemType": "ServiceRegistry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TaskDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-taskdefinition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ECS::TaskDefinition": {
      "Attributes": {
        "TaskDefinitionArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html",
      "Properties": {
        "ContainerDefinitions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-containerdefinitions",
          "DuplicatesAllowed": false,
          "ItemType": "ContainerDefinition",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Cpu": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-cpu",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-executionrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "Family": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-family",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InferenceAccelerators": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-inferenceaccelerators",
          "DuplicatesAllowed": false,
          "ItemType": "InferenceAccelerator",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "IpcMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-ipcmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Memory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-memory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NetworkMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-networkmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EcsNetworkMode"
          }
        },
        "PidMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-pidmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PlacementConstraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-placementconstraints",
          "DuplicatesAllowed": false,
          "ItemType": "TaskDefinitionPlacementConstraint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ProxyConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-proxyconfiguration",
          "Required": false,
          "Type": "ProxyConfiguration",
          "UpdateType": "Immutable"
        },
        "RequiresCompatibilities": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-requirescompatibilities",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TaskRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-taskrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Volumes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-volumes",
          "DuplicatesAllowed": false,
          "ItemType": "Volume",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ECS::TaskSet": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html",
      "Properties": {
        "Cluster": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-cluster",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ExternalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-externalid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LaunchType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-launchtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ECS::TaskSet.LaunchType"
          }
        },
        "LoadBalancers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-loadbalancers",
          "ItemType": "LoadBalancer",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "NetworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-networkconfiguration",
          "Required": false,
          "Type": "NetworkConfiguration",
          "UpdateType": "Immutable"
        },
        "PlatformVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-platformversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Scale": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-scale",
          "Required": false,
          "Type": "Scale",
          "UpdateType": "Mutable"
        },
        "Service": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-service",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ServiceRegistries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-serviceregistries",
          "ItemType": "ServiceRegistry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "TaskDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-taskdefinition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EFS::AccessPoint": {
      "Attributes": {
        "AccessPointId": {
          "PrimitiveType": "String"
        },
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html",
      "Properties": {
        "AccessPointTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-accesspointtags",
          "DuplicatesAllowed": false,
          "ItemType": "AccessPointTag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ClientToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-clienttoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "FileSystemId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-filesystemid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PosixUser": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-posixuser",
          "Required": false,
          "Type": "PosixUser",
          "UpdateType": "Immutable"
        },
        "RootDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-rootdirectory",
          "Required": false,
          "Type": "RootDirectory",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EFS::FileSystem": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "FileSystemId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html",
      "Properties": {
        "BackupPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-backuppolicy",
          "Required": false,
          "Type": "BackupPolicy",
          "UpdateType": "Mutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "FileSystemPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystempolicy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FileSystemTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystemtags",
          "DuplicatesAllowed": false,
          "ItemType": "ElasticFileSystemTag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LifecyclePolicies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-lifecyclepolicies",
          "DuplicatesAllowed": false,
          "ItemType": "LifecyclePolicy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PerformanceMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-performancemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EFSFileSystemPerformanceMode"
          }
        },
        "ProvisionedThroughputInMibps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-provisionedthroughputinmibps",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ThroughputMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-throughputmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "EFSFileSystemThroughputMode"
          }
        }
      }
    },
    "AWS::EFS::MountTarget": {
      "Attributes": {
        "IpAddress": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html",
      "Properties": {
        "FileSystemId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-filesystemid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "IpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipaddress",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-securitygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EKS::Addon": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html",
      "Properties": {
        "AddonName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-addonname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AddonVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-addonversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ClusterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-clustername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ResolveConflicts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-resolveconflicts",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EKS::Addon.ResolveConflicts"
          }
        },
        "ServiceAccountRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-serviceaccountrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::Cluster": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CertificateAuthorityData": {
          "PrimitiveType": "String"
        },
        "ClusterSecurityGroupId": {
          "PrimitiveType": "String"
        },
        "EncryptionConfigKeyArn": {
          "PrimitiveType": "String"
        },
        "Endpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html",
      "Properties": {
        "EncryptionConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-encryptionconfig",
          "ItemType": "EncryptionConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "KubernetesNetworkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-kubernetesnetworkconfig",
          "Required": false,
          "Type": "KubernetesNetworkConfig",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ResourcesVpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-resourcesvpcconfig",
          "Required": true,
          "Type": "ResourcesVpcConfig",
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::FargateProfile": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html",
      "Properties": {
        "ClusterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html#cfn-eks-fargateprofile-clustername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "FargateProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html#cfn-eks-fargateprofile-fargateprofilename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PodExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html#cfn-eks-fargateprofile-podexecutionrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Selectors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html#cfn-eks-fargateprofile-selectors",
          "ItemType": "Selector",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html#cfn-eks-fargateprofile-subnets",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html#cfn-eks-fargateprofile-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EKS::Nodegroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ClusterName": {
          "PrimitiveType": "String"
        },
        "NodegroupName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html",
      "Properties": {
        "AmiType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-amitype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CapacityType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-capacitytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClusterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-clustername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DiskSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-disksize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ForceUpdateEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-forceupdateenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-instancetypes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Labels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-labels",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LaunchTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-launchtemplate",
          "Required": false,
          "Type": "LaunchTemplateSpecification",
          "UpdateType": "Mutable"
        },
        "NodeRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-noderole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NodegroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-nodegroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReleaseVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-releaseversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RemoteAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-remoteaccess",
          "Required": false,
          "Type": "RemoteAccess",
          "UpdateType": "Immutable"
        },
        "ScalingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-scalingconfig",
          "Required": false,
          "Type": "ScalingConfig",
          "UpdateType": "Mutable"
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-subnets",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::Cluster": {
      "Attributes": {
        "MasterPublicDNS": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html",
      "Properties": {
        "AdditionalInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-additionalinfo",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Applications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-applications",
          "DuplicatesAllowed": false,
          "ItemType": "Application",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "AutoScalingRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-autoscalingrole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Name"
          }
        },
        "BootstrapActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-bootstrapactions",
          "DuplicatesAllowed": false,
          "ItemType": "BootstrapActionConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "CustomAmiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-customamiid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EbsRootVolumeSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-ebsrootvolumesize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Instances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-instances",
          "Required": true,
          "Type": "JobFlowInstancesConfig",
          "UpdateType": "Conditional"
        },
        "JobFlowRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-jobflowrole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::InstanceProfile.Name"
          }
        },
        "KerberosAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-kerberosattributes",
          "Required": false,
          "Type": "KerberosAttributes",
          "UpdateType": "Immutable"
        },
        "LogEncryptionKmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-logencryptionkmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LogUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-loguri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ManagedScalingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-managedscalingpolicy",
          "Required": false,
          "Type": "ManagedScalingPolicy",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ReleaseLabel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-releaselabel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ScaleDownBehavior": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-scaledownbehavior",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-securityconfiguration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ServiceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-servicerole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Name"
          }
        },
        "StepConcurrencyLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-stepconcurrencylevel",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Steps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-steps",
          "DuplicatesAllowed": false,
          "ItemType": "StepConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VisibleToAllUsers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-visibletoallusers",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceFleetConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html",
      "Properties": {
        "ClusterId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-clusterid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "InstanceFleetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancefleettype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "InstanceTypeConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfigs",
          "DuplicatesAllowed": false,
          "ItemType": "InstanceTypeConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "LaunchSpecifications": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-launchspecifications",
          "Required": false,
          "Type": "InstanceFleetProvisioningSpecifications",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TargetOnDemandCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetondemandcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TargetSpotCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetspotcapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EMR::InstanceGroupConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html",
      "Properties": {
        "AutoScalingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy",
          "Required": false,
          "Type": "AutoScalingPolicy",
          "UpdateType": "Mutable"
        },
        "BidPrice": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-bidprice",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Configurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-configurations",
          "DuplicatesAllowed": false,
          "ItemType": "Configuration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EbsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-ebsconfiguration",
          "Required": false,
          "Type": "EbsConfiguration",
          "UpdateType": "Immutable"
        },
        "InstanceCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfiginstancecount-",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancerole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "EMRInstanceType"
          }
        },
        "JobFlowId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-jobflowid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Market": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-market",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::SecurityConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-securityconfiguration",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::Step": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html",
      "Properties": {
        "ActionOnFailure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-actiononfailure",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "HadoopJarStep": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-hadoopjarstep",
          "Required": true,
          "Type": "HadoopJarStepConfig",
          "UpdateType": "Immutable"
        },
        "JobFlowId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-jobflowid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::EMR::Studio": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "StudioId": {
          "PrimitiveType": "String"
        },
        "Url": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html",
      "Properties": {
        "AuthMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-authmode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.AuthMode"
          }
        },
        "DefaultS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-defaults3location",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.DefaultS3Location"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EngineSecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-enginesecuritygroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.EngineSecurityGroupId"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.Name"
          }
        },
        "ServiceRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-servicerole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.ServiceRole"
          }
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.SubnetIds"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-userrole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.UserRole"
          }
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.VpcId"
          }
        },
        "WorkspaceSecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-workspacesecuritygroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::Studio.WorkspaceSecurityGroupId"
          }
        }
      }
    },
    "AWS::EMR::StudioSessionMapping": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html",
      "Properties": {
        "IdentityName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-identityname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "IdentityType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-identitytype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::StudioSessionMapping.IdentityType"
          }
        },
        "SessionPolicyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-sessionpolicyarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::EMR::StudioSessionMapping.SessionPolicyArn"
          }
        },
        "StudioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-studioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EMR::StudioSessionMapping.StudioId"
          }
        }
      }
    },
    "AWS::ElastiCache::CacheCluster": {
      "Attributes": {
        "ConfigurationEndpoint.Address": {
          "PrimitiveType": "String"
        },
        "ConfigurationEndpoint.Port": {
          "PrimitiveType": "String"
        },
        "RedisEndpoint.Address": {
          "PrimitiveType": "String"
        },
        "RedisEndpoint.Port": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html",
      "Properties": {
        "AZMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-azmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "AutoMinorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-autominorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheNodeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachenodetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "ElastiCacheInstanceType"
          }
        },
        "CacheParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cacheparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheSecurityGroupNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachesecuritygroupnames",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CacheSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachesubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClusterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-clustername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-engine",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotificationTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-notificationtopicarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumCacheNodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-numcachenodes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Conditional"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PreferredAvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredavailabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "PreferredAvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredavailabilityzones",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "SnapshotName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SnapshotRetentionLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotretentionlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotwindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-vpcsecuritygroupids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::GlobalReplicationGroup": {
      "Attributes": {
        "GlobalReplicationGroupId": {
          "PrimitiveType": "String"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html",
      "Properties": {
        "AutomaticFailoverEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-automaticfailoverenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheNodeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-cachenodetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-cacheparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalNodeGroupCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-globalnodegroupcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalReplicationGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-globalreplicationgroupdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalReplicationGroupIdSuffix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-globalreplicationgroupidsuffix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Members": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-members",
          "DuplicatesAllowed": false,
          "ItemType": "GlobalReplicationGroupMember",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RegionalConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-regionalconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "RegionalConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::ParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html",
      "Properties": {
        "CacheParameterGroupFamily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-cacheparametergroupfamily",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Properties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-properties",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::ReplicationGroup": {
      "Attributes": {
        "ConfigurationEndPoint.Address": {
          "PrimitiveType": "String"
        },
        "ConfigurationEndPoint.Port": {
          "PrimitiveType": "String"
        },
        "PrimaryEndPoint.Address": {
          "PrimitiveType": "String"
        },
        "PrimaryEndPoint.Port": {
          "PrimitiveType": "String"
        },
        "ReadEndPoint.Addresses": {
          "PrimitiveType": "String"
        },
        "ReadEndPoint.Addresses.List": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "ReadEndPoint.Ports": {
          "PrimitiveType": "String"
        },
        "ReadEndPoint.Ports.List": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "ReaderEndPoint.Address": {
          "PrimitiveType": "String"
        },
        "ReaderEndPoint.Port": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html",
      "Properties": {
        "AtRestEncryptionEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-atrestencryptionenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AuthToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-authtoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "AutoMinorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-autominorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AutomaticFailoverEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-automaticfailoverenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheNodeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachenodetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "ElastiCacheInstanceType"
          }
        },
        "CacheParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cacheparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CacheSecurityGroupNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachesecuritygroupnames",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "CacheSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachesubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-engine",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalReplicationGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-globalreplicationgroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MultiAZEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-multiazenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NodeGroupConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-nodegroupconfiguration",
          "DuplicatesAllowed": false,
          "ItemType": "NodeGroupConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional"
        },
        "NotificationTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-notificationtopicarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumCacheClusters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-numcacheclusters",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ElastiCache::ReplicationGroup.NumCacheClusters"
          }
        },
        "NumNodeGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-numnodegroups",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PreferredCacheClusterAZs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-preferredcacheclusterazs",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrimaryClusterId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-primaryclusterid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplicasPerNodeGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicaspernodegroup",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ElastiCache::ReplicationGroup.ReplicasPerNodeGroup"
          }
        },
        "ReplicationGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicationgroupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ReplicationGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicationgroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-securitygroupids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SnapshotArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "SnapshotName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SnapshotRetentionLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotretentionlimit",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotwindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshottingClusterId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshottingclusterid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TransitEncryptionEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-transitencryptionenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "UserGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-usergroupids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::SecurityGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html#cfn-elasticache-securitygroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::SecurityGroupIngress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html",
      "Properties": {
        "CacheSecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-cachesecuritygroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EC2SecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EC2SecurityGroupOwnerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupownerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::SubnetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html",
      "Properties": {
        "CacheSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-cachesubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-subnetids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElastiCache::User": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html",
      "Properties": {
        "AccessString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html#cfn-elasticache-user-accessstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html#cfn-elasticache-user-engine",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ElastiCache::User.Engine"
          }
        },
        "NoPasswordRequired": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html#cfn-elasticache-user-nopasswordrequired",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Passwords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html#cfn-elasticache-user-passwords",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html#cfn-elasticache-user-userid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ElastiCache::User.UserId"
          }
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html#cfn-elasticache-user-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ElastiCache::UserGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html",
      "Properties": {
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html#cfn-elasticache-usergroup-engine",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ElastiCache::UserGroup.Engine"
          }
        },
        "UserGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html#cfn-elasticache-usergroup-usergroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ElastiCache::UserGroup.UserGroupId"
          }
        },
        "UserIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html#cfn-elasticache-usergroup-userids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Application": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceLifecycleConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-resourcelifecycleconfig",
          "Required": false,
          "Type": "ApplicationResourceLifecycleConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::ApplicationVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceBundle": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-sourcebundle",
          "Required": true,
          "Type": "SourceBundle",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::ConfigurationTemplate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnvironmentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-environmentid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OptionSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-optionsettings",
          "DuplicatesAllowed": true,
          "ItemType": "ConfigurationOptionSetting",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PlatformArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-platformarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SolutionStackName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-solutionstackname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration",
          "Required": false,
          "Type": "SourceConfiguration",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ElasticBeanstalk::Environment": {
      "Attributes": {
        "EndpointURL": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CNAMEPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-cnameprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnvironmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OptionSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-optionsettings",
          "DuplicatesAllowed": true,
          "ItemType": "OptionSetting",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PlatformArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-platformarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SolutionStackName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-solutionstackname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-elasticbeanstalk-environment-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-templatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-tier",
          "Required": false,
          "Type": "Tier",
          "UpdateType": "Conditional"
        },
        "VersionLabel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-versionlabel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancing::LoadBalancer": {
      "Attributes": {
        "CanonicalHostedZoneName": {
          "PrimitiveType": "String"
        },
        "CanonicalHostedZoneNameID": {
          "PrimitiveType": "String"
        },
        "DNSName": {
          "PrimitiveType": "String"
        },
        "SourceSecurityGroup.GroupName": {
          "PrimitiveType": "String"
        },
        "SourceSecurityGroup.OwnerAlias": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html",
      "Properties": {
        "AccessLoggingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-accessloggingpolicy",
          "Required": false,
          "Type": "AccessLoggingPolicy",
          "UpdateType": "Mutable"
        },
        "AppCookieStickinessPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy",
          "DuplicatesAllowed": false,
          "ItemType": "AppCookieStickinessPolicy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-availabilityzones",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional",
          "Value": {
            "ListValueType": "AvailabilityZones",
            "ValueType": "AvailabilityZone"
          }
        },
        "ConnectionDrainingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectiondrainingpolicy",
          "Required": false,
          "Type": "ConnectionDrainingPolicy",
          "UpdateType": "Mutable"
        },
        "ConnectionSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectionsettings",
          "Required": false,
          "Type": "ConnectionSettings",
          "UpdateType": "Mutable"
        },
        "CrossZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-crosszone",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheck": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-healthcheck",
          "Required": false,
          "Type": "HealthCheck",
          "UpdateType": "Conditional"
        },
        "Instances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-instances",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LBCookieStickinessPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy",
          "DuplicatesAllowed": false,
          "ItemType": "LBCookieStickinessPolicy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Listeners": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners",
          "DuplicatesAllowed": false,
          "ItemType": "Listeners",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LoadBalancerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-elbname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Policies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies",
          "DuplicatesAllowed": false,
          "ItemType": "Policies",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Scheme": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-scheme",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-securitygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.GroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.GroupId"
          }
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-subnets",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Conditional",
          "Value": {
            "ListValueType": "SubnetIds",
            "ValueType": "SubnetId"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::Listener": {
      "Attributes": {
        "ListenerArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html",
      "Properties": {
        "AlpnPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-alpnpolicy",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Certificates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-certificates",
          "DuplicatesAllowed": false,
          "ItemType": "Certificate",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DefaultActions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-defaultactions",
          "DuplicatesAllowed": false,
          "ItemType": "Action",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LoadBalancerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-loadbalancerarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "LoadBalancerV2Arn"
          }
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "LoadBalancerPort"
          }
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SslPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-sslpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerCertificate": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html",
      "Properties": {
        "Certificates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-certificates",
          "DuplicatesAllowed": false,
          "ItemType": "Certificate",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ListenerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-listenerarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule": {
      "Attributes": {
        "IsDefault": {
          "PrimitiveType": "Boolean"
        },
        "RuleArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-actions",
          "DuplicatesAllowed": false,
          "ItemType": "Action",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Conditions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-conditions",
          "DuplicatesAllowed": false,
          "ItemType": "RuleCondition",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ListenerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-listenerarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ElasticLoadBalancingV2::ListenerRule.Priority"
          }
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::LoadBalancer": {
      "Attributes": {
        "CanonicalHostedZoneID": {
          "PrimitiveType": "String"
        },
        "DNSName": {
          "PrimitiveType": "String"
        },
        "LoadBalancerFullName": {
          "PrimitiveType": "String"
        },
        "LoadBalancerName": {
          "PrimitiveType": "String"
        },
        "SecurityGroups": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html",
      "Properties": {
        "IpAddressType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-ipaddresstype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoadBalancerAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes",
          "DuplicatesAllowed": false,
          "ItemType": "LoadBalancerAttribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Scheme": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-scheme",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-securitygroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SubnetMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmappings",
          "DuplicatesAllowed": false,
          "ItemType": "SubnetMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Subnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-subnets",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "SubnetIds",
            "ValueType": "SubnetId"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ElasticLoadBalancingV2::TargetGroup": {
      "Attributes": {
        "LoadBalancerArns": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "TargetGroupFullName": {
          "PrimitiveType": "String"
        },
        "TargetGroupName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html",
      "Properties": {
        "HealthCheckEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ElasticLoadBalancingV2::TargetGroup.HealthCheckIntervalSeconds"
          }
        },
        "HealthCheckPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckport",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckprotocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckTimeoutSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthchecktimeoutseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "TargetGroupHealthCheckTimeoutSeconds"
          }
        },
        "HealthyThresholdCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthythresholdcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "TargetGroupHealthyThresholdCount"
          }
        },
        "Matcher": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-matcher",
          "Required": false,
          "Type": "Matcher",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ProtocolVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-protocolversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetGroupAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes",
          "DuplicatesAllowed": false,
          "ItemType": "TargetGroupAttribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targettype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targets",
          "DuplicatesAllowed": false,
          "ItemType": "TargetDescription",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UnhealthyThresholdCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-unhealthythresholdcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ElasticLoadBalancingV2::TargetGroup.UnhealthyThresholdCount"
          }
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::Elasticsearch::Domain": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "DomainArn": {
          "PrimitiveType": "String"
        },
        "DomainEndpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html",
      "Properties": {
        "AccessPolicies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-accesspolicies",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AdvancedOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-advancedoptions",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "AdvancedSecurityOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-advancedsecurityoptions",
          "Required": false,
          "Type": "AdvancedSecurityOptionsInput",
          "UpdateType": "Immutable"
        },
        "CognitoOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-cognitooptions",
          "Required": false,
          "Type": "CognitoOptions",
          "UpdateType": "Mutable"
        },
        "DomainEndpointOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainendpointoptions",
          "Required": false,
          "Type": "DomainEndpointOptions",
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EBSOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-ebsoptions",
          "Required": false,
          "Type": "EBSOptions",
          "UpdateType": "Mutable"
        },
        "ElasticsearchClusterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchclusterconfig",
          "Required": false,
          "Type": "ElasticsearchClusterConfig",
          "UpdateType": "Mutable"
        },
        "ElasticsearchVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "EncryptionAtRestOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-encryptionatrestoptions",
          "Required": false,
          "Type": "EncryptionAtRestOptions",
          "UpdateType": "Immutable"
        },
        "LogPublishingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-logpublishingoptions",
          "DuplicatesAllowed": false,
          "ItemType": "LogPublishingOption",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "NodeToNodeEncryptionOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions",
          "Required": false,
          "Type": "NodeToNodeEncryptionOptions",
          "UpdateType": "Immutable"
        },
        "SnapshotOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-snapshotoptions",
          "Required": false,
          "Type": "SnapshotOptions",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VPCOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-vpcoptions",
          "Required": false,
          "Type": "VPCOptions",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::EventSchemas::RegistryPolicy": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html",
      "Properties": {
        "Policy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html#cfn-eventschemas-registrypolicy-policy",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RegistryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html#cfn-eventschemas-registrypolicy-registryname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RevisionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html#cfn-eventschemas-registrypolicy-revisionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Events::ApiDestination": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-apidestination.html",
      "Properties": {
        "ConnectionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-apidestination.html#cfn-events-apidestination-connectionarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-apidestination.html#cfn-events-apidestination-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HttpMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-apidestination.html#cfn-events-apidestination-httpmethod",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Events::ApiDestination.HttpMethod"
          }
        },
        "InvocationEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-apidestination.html#cfn-events-apidestination-invocationendpoint",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InvocationRateLimitPerSecond": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-apidestination.html#cfn-events-apidestination-invocationratelimitpersecond",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-apidestination.html#cfn-events-apidestination-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Events::ApiDestination.Name"
          }
        }
      }
    },
    "AWS::Events::Archive": {
      "Attributes": {
        "ArchiveName": {
          "PrimitiveType": "String"
        },
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html",
      "Properties": {
        "ArchiveName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html#cfn-events-archive-archivename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html#cfn-events-archive-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html#cfn-events-archive-eventpattern",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RetentionDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html#cfn-events-archive-retentiondays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html#cfn-events-archive-sourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Events::Connection": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "SecretArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html",
      "Properties": {
        "AuthParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html#cfn-events-connection-authparameters",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AuthorizationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html#cfn-events-connection-authorizationtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Events::Connection.AuthorizationType"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html#cfn-events-connection-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html#cfn-events-connection-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Events::Connection.Name"
          }
        }
      }
    },
    "AWS::Events::EventBus": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        },
        "Policy": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html",
      "Properties": {
        "EventSourceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-eventsourcename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Events::EventBusPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-action",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Events::EventBusPolicy.Action"
          }
        },
        "Condition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-condition",
          "Required": false,
          "Type": "Condition",
          "UpdateType": "Mutable"
        },
        "EventBusName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-eventbusname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-principal",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Statement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-statement",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StatementId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-statementid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Events::Rule": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventBusName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EventPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-scheduleexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "State": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Default::Default.EnabledState"
          }
        },
        "Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets",
          "DuplicatesAllowed": false,
          "ItemType": "Target",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::FMS::NotificationChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html",
      "Properties": {
        "SnsRoleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html#cfn-fms-notificationchannel-snsrolename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::NotificationChannel.SnsRoleName"
          }
        },
        "SnsTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html#cfn-fms-notificationchannel-snstopicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::NotificationChannel.SnsTopicArn"
          }
        }
      }
    },
    "AWS::FMS::Policy": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html",
      "Properties": {
        "DeleteAllPolicyResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-deleteallpolicyresources",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExcludeMap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-excludemap",
          "Required": false,
          "Type": "IEMap",
          "UpdateType": "Mutable"
        },
        "ExcludeResourceTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-excluderesourcetags",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "IncludeMap": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-includemap",
          "Required": false,
          "Type": "IEMap",
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.PolicyName"
          }
        },
        "RemediationEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-remediationenabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-resourcetags",
          "ItemType": "ResourceTag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-resourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.ResourceType"
          }
        },
        "ResourceTypeList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-resourcetypelist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FMS::Policy.ResourceTypeList"
          }
        },
        "SecurityServicePolicyData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-securityservicepolicydata",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-tags",
          "ItemType": "PolicyTag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::FSx::FileSystem": {
      "Attributes": {
        "LustreMountName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html",
      "Properties": {
        "BackupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-backupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "FileSystemType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-filesystemtype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LustreConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-lustreconfiguration",
          "Required": false,
          "Type": "LustreConfiguration",
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "StorageCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-storagecapacity",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::FSx::FileSystem.StorageCapacity"
          }
        },
        "StorageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-storagetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "WindowsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-windowsconfiguration",
          "Required": false,
          "Type": "WindowsConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Alias": {
      "Attributes": {
        "AliasId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::Alias.Description"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::Alias.Name"
          }
        },
        "RoutingStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-routingstrategy",
          "Required": true,
          "Type": "RoutingStrategy",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Build": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OperatingSystem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-operatingsystem",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StorageLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-storagelocation",
          "Required": false,
          "Type": "S3Location",
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::Fleet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html",
      "Properties": {
        "BuildId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-buildid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CertificateConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-certificateconfiguration",
          "Required": false,
          "Type": "CertificateConfiguration",
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DesiredEC2Instances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-desiredec2instances",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EC2InboundPermissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-ec2inboundpermissions",
          "DuplicatesAllowed": false,
          "ItemType": "IpPermission",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EC2InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-ec2instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "GameLiftInstanceType"
          }
        },
        "FleetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-fleettype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceRoleARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-instancerolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LogPaths": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-logpaths",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "MaxSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-maxsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-metricgroups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MinSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-minsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "NewGameSessionProtectionPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-newgamesessionprotectionpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PeerVpcAwsAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-peervpcawsaccountid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PeerVpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-peervpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ResourceCreationLimitPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-resourcecreationlimitpolicy",
          "Required": false,
          "Type": "ResourceCreationLimitPolicy",
          "UpdateType": "Mutable"
        },
        "RuntimeConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-runtimeconfiguration",
          "Required": false,
          "Type": "RuntimeConfiguration",
          "UpdateType": "Mutable"
        },
        "ScriptId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-scriptid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ServerLaunchParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-serverlaunchparameters",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ServerLaunchPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-serverlaunchpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GameLift::GameServerGroup": {
      "Attributes": {
        "AutoScalingGroupArn": {
          "PrimitiveType": "String"
        },
        "GameServerGroupArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html",
      "Properties": {
        "AutoScalingPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-autoscalingpolicy",
          "Required": false,
          "Type": "AutoScalingPolicy",
          "UpdateType": "Mutable"
        },
        "BalancingStrategy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-balancingstrategy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::GameServerGroup.BalancingStrategy"
          }
        },
        "DeleteOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-deleteoption",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::GameServerGroup.DeleteOption"
          }
        },
        "GameServerGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-gameservergroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::GameServerGroup.GameServerGroupName"
          }
        },
        "GameServerProtectionPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-gameserverprotectionpolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::GameServerGroup.GameServerProtectionPolicy"
          }
        },
        "InstanceDefinitions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-instancedefinitions",
          "ItemType": "InstanceDefinition",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LaunchTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-launchtemplate",
          "Required": true,
          "Type": "LaunchTemplate",
          "UpdateType": "Mutable"
        },
        "MaxSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-maxsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MinSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-minsize",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::GameServerGroup.RoleArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcSubnets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-vpcsubnets",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GameLift::GameServerGroup.VpcSubnets"
          }
        }
      }
    },
    "AWS::GameLift::GameSessionQueue": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html",
      "Properties": {
        "Destinations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html#cfn-gamelift-gamesessionqueue-destinations",
          "ItemType": "Destination",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html#cfn-gamelift-gamesessionqueue-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PlayerLatencyPolicies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html#cfn-gamelift-gamesessionqueue-playerlatencypolicies",
          "ItemType": "PlayerLatencyPolicy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TimeoutInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html#cfn-gamelift-gamesessionqueue-timeoutinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::MatchmakingConfiguration": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html",
      "Properties": {
        "AcceptanceRequired": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-acceptancerequired",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AcceptanceTimeoutSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-acceptancetimeoutseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AdditionalPlayerCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-additionalplayercount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BackfillMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-backfillmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomEventData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-customeventdata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FlexMatchMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-flexmatchmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GameProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-gameproperties",
          "ItemType": "GameProperty",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "GameSessionData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-gamesessiondata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GameSessionQueueArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-gamesessionqueuearns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NotificationTarget": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-notificationtarget",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequestTimeoutSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-requesttimeoutseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RuleSetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html#cfn-gamelift-matchmakingconfiguration-rulesetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GameLift::MatchmakingRuleSet": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html#cfn-gamelift-matchmakingruleset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RuleSetBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html#cfn-gamelift-matchmakingruleset-rulesetbody",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GameLift::Script": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html#cfn-gamelift-script-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StorageLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html#cfn-gamelift-script-storagelocation",
          "Required": true,
          "Type": "S3Location",
          "UpdateType": "Mutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html#cfn-gamelift-script-version",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GlobalAccelerator::Accelerator": {
      "Attributes": {
        "AcceleratorArn": {
          "PrimitiveType": "String"
        },
        "DnsName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html#cfn-globalaccelerator-accelerator-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IpAddressType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html#cfn-globalaccelerator-accelerator-ipaddresstype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::Accelerator.IpAddressType"
          }
        },
        "IpAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html#cfn-globalaccelerator-accelerator-ipaddresses",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::Accelerator.IpAddresses"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html#cfn-globalaccelerator-accelerator-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::Accelerator.Name"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html#cfn-globalaccelerator-accelerator-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GlobalAccelerator::EndpointGroup": {
      "Attributes": {
        "EndpointGroupArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html",
      "Properties": {
        "EndpointConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-endpointconfigurations",
          "ItemType": "EndpointConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EndpointGroupRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-endpointgroupregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "HealthCheckIntervalSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-healthcheckintervalseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckPath": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-healthcheckpath",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HealthCheckPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-healthcheckport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::EndpointGroup.HealthCheckPort"
          }
        },
        "HealthCheckProtocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-healthcheckprotocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::EndpointGroup.HealthCheckProtocol"
          }
        },
        "ListenerArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-listenerarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::EndpointGroup.ListenerArn"
          }
        },
        "PortOverrides": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-portoverrides",
          "ItemType": "PortOverride",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ThresholdCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-thresholdcount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TrafficDialPercentage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html#cfn-globalaccelerator-endpointgroup-trafficdialpercentage",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GlobalAccelerator::Listener": {
      "Attributes": {
        "ListenerArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html",
      "Properties": {
        "AcceleratorArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html#cfn-globalaccelerator-listener-acceleratorarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ClientAffinity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html#cfn-globalaccelerator-listener-clientaffinity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::Listener.ClientAffinity"
          }
        },
        "PortRanges": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html#cfn-globalaccelerator-listener-portranges",
          "ItemType": "PortRange",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html#cfn-globalaccelerator-listener-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GlobalAccelerator::Listener.Protocol"
          }
        }
      }
    },
    "AWS::Glue::Classifier": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html",
      "Properties": {
        "CsvClassifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-csvclassifier",
          "Required": false,
          "Type": "CsvClassifier",
          "UpdateType": "Mutable"
        },
        "GrokClassifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-grokclassifier",
          "Required": false,
          "Type": "GrokClassifier",
          "UpdateType": "Mutable"
        },
        "JsonClassifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-jsonclassifier",
          "Required": false,
          "Type": "JsonClassifier",
          "UpdateType": "Mutable"
        },
        "XMLClassifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-xmlclassifier",
          "Required": false,
          "Type": "XMLClassifier",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Connection": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html#cfn-glue-connection-catalogid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ConnectionInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html#cfn-glue-connection-connectioninput",
          "Required": true,
          "Type": "ConnectionInput",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Crawler": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html",
      "Properties": {
        "Classifiers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-classifiers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-configuration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CrawlerSecurityConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-crawlersecurityconfiguration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-role",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.NameOrArn"
          }
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-schedule",
          "Required": false,
          "Type": "Schedule",
          "UpdateType": "Mutable"
        },
        "SchemaChangePolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-schemachangepolicy",
          "Required": false,
          "Type": "SchemaChangePolicy",
          "UpdateType": "Mutable"
        },
        "TablePrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-tableprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-targets",
          "Required": true,
          "Type": "Targets",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::DataCatalogEncryptionSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-catalogid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DataCatalogEncryptionSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings",
          "Required": true,
          "Type": "DataCatalogEncryptionSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Database": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html#cfn-glue-database-catalogid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DatabaseInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html#cfn-glue-database-databaseinput",
          "Required": true,
          "Type": "DatabaseInput",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::DevEndpoint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html",
      "Properties": {
        "Arguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-arguments",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-endpointname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ExtraJarsS3Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-extrajarss3path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExtraPythonLibsS3Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-extrapythonlibss3path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlueVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-glueversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumberOfNodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-numberofnodes",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumberOfWorkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-numberofworkers",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PublicKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-publickey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PublicKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-publickeys",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecurityConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-securityconfiguration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::EC2::SecurityGroup.NamesOrGroupIds",
            "ValueType": "AWS::EC2::SecurityGroup.NameOrGroupId"
          }
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WorkerType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-workertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Job": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html",
      "Properties": {
        "AllocatedCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-allocatedcapacity",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Command": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-command",
          "Required": true,
          "Type": "JobCommand",
          "UpdateType": "Mutable"
        },
        "Connections": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-connections",
          "Required": false,
          "Type": "ConnectionsList",
          "UpdateType": "Mutable"
        },
        "DefaultArguments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-defaultarguments",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ExecutionProperty": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-executionproperty",
          "Required": false,
          "Type": "ExecutionProperty",
          "UpdateType": "Mutable"
        },
        "GlueVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-glueversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LogUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-loguri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-maxcapacity",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-maxretries",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NotificationProperty": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-notificationproperty",
          "Required": false,
          "Type": "NotificationProperty",
          "UpdateType": "Mutable"
        },
        "NumberOfWorkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-numberofworkers",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Job.NumberOfWorkers"
          }
        },
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-role",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.NameOrArn"
          }
        },
        "SecurityConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-securityconfiguration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-timeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WorkerType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-workertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::MLTransform": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlueVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-glueversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputRecordTables": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-inputrecordtables",
          "Required": true,
          "Type": "InputRecordTables",
          "UpdateType": "Immutable"
        },
        "MaxCapacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-maxcapacity",
          "PrimitiveType": "Double",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::MLTransform.MaxCapacity"
          }
        },
        "MaxRetries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-maxretries",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NumberOfWorkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-numberofworkers",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-role",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-timeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TransformEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-transformencryption",
          "Required": false,
          "Type": "TransformEncryption",
          "UpdateType": "Mutable"
        },
        "TransformParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-transformparameters",
          "Required": true,
          "Type": "TransformParameters",
          "UpdateType": "Mutable"
        },
        "WorkerType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-workertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Partition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-catalogid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-databasename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PartitionInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-partitioninput",
          "Required": true,
          "Type": "PartitionInput",
          "UpdateType": "Mutable"
        },
        "TableName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-tablename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::Registry": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html#cfn-glue-registry-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html#cfn-glue-registry-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::Registry.Name"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html#cfn-glue-registry-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::Schema": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "InitialSchemaVersionId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html",
      "Properties": {
        "CheckpointVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-checkpointversion",
          "Required": false,
          "Type": "SchemaVersion",
          "UpdateType": "Mutable"
        },
        "Compatibility": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-compatibility",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Schema.Compatibility"
          }
        },
        "DataFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-dataformat",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::Schema.DataFormat"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::Schema.Name"
          }
        },
        "Registry": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-registry",
          "Required": false,
          "Type": "Registry",
          "UpdateType": "Immutable"
        },
        "SchemaDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-schemadefinition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html#cfn-glue-schema-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::SchemaVersion": {
      "Attributes": {
        "VersionId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversion.html",
      "Properties": {
        "Schema": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversion.html#cfn-glue-schemaversion-schema",
          "Required": true,
          "Type": "Schema",
          "UpdateType": "Immutable"
        },
        "SchemaDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversion.html#cfn-glue-schemaversion-schemadefinition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::SchemaVersionMetadata": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html",
      "Properties": {
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html#cfn-glue-schemaversionmetadata-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::SchemaVersionMetadata.Key"
          }
        },
        "SchemaVersionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html#cfn-glue-schemaversionmetadata-schemaversionid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::SchemaVersionMetadata.SchemaVersionId"
          }
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html#cfn-glue-schemaversionmetadata-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Glue::SchemaVersionMetadata.Value"
          }
        }
      }
    },
    "AWS::Glue::SecurityConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html",
      "Properties": {
        "EncryptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration",
          "Required": true,
          "Type": "EncryptionConfiguration",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html#cfn-glue-securityconfiguration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::Table": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html",
      "Properties": {
        "CatalogId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html#cfn-glue-table-catalogid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html#cfn-glue-table-databasename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TableInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html#cfn-glue-table-tableinput",
          "Required": true,
          "Type": "TableInput",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Glue::Trigger": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-actions",
          "ItemType": "Action",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Predicate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-predicate",
          "Required": false,
          "Type": "Predicate",
          "UpdateType": "Mutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-schedule",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartOnCreation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-startoncreation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Glue::Trigger.Type"
          }
        },
        "WorkflowName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-workflowname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Glue::Workflow": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html",
      "Properties": {
        "DefaultRunProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-defaultrunproperties",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Greengrass::ConnectorDefinition": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ConnectorDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::CoreDefinition": {
      "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"
        }
      }
    },
    "AWS::Greengrass::CoreDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::DeviceDefinition": {
      "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"
        }
      }
    },
    "AWS::Greengrass::DeviceDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinition": {
      "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"
        }
      }
    },
    "AWS::Greengrass::FunctionDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::Group": {
      "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"
        }
      }
    },
    "AWS::Greengrass::GroupVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::LoggerDefinition": {
      "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"
        }
      }
    },
    "AWS::Greengrass::LoggerDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinition": {
      "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"
        }
      }
    },
    "AWS::Greengrass::ResourceDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::Greengrass::SubscriptionDefinition": {
      "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"
        }
      }
    },
    "AWS::Greengrass::SubscriptionDefinitionVersion": {
      "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"
        }
      }
    },
    "AWS::GreengrassV2::ComponentVersion": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ComponentName": {
          "PrimitiveType": "String"
        },
        "ComponentVersion": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html",
      "Properties": {
        "InlineRecipe": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html#cfn-greengrassv2-componentversion-inlinerecipe",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LambdaFunction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html#cfn-greengrassv2-componentversion-lambdafunction",
          "Required": false,
          "Type": "LambdaFunctionRecipeSource",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html#cfn-greengrassv2-componentversion-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::Config": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "Type": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html",
      "Properties": {
        "ConfigData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html#cfn-groundstation-config-configdata",
          "Required": true,
          "Type": "ConfigData",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html#cfn-groundstation-config-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html#cfn-groundstation-config-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::DataflowEndpointGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-dataflowendpointgroup.html",
      "Properties": {
        "EndpointDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-dataflowendpointgroup.html#cfn-groundstation-dataflowendpointgroup-endpointdetails",
          "ItemType": "EndpointDetails",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-dataflowendpointgroup.html#cfn-groundstation-dataflowendpointgroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GroundStation::MissionProfile": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "Region": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html",
      "Properties": {
        "ContactPostPassDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html#cfn-groundstation-missionprofile-contactpostpassdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ContactPrePassDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html#cfn-groundstation-missionprofile-contactprepassdurationseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataflowEdges": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html#cfn-groundstation-missionprofile-dataflowedges",
          "ItemType": "DataflowEdge",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MinimumViableContactDurationSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html#cfn-groundstation-missionprofile-minimumviablecontactdurationseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html#cfn-groundstation-missionprofile-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html#cfn-groundstation-missionprofile-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TrackingConfigArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html#cfn-groundstation-missionprofile-trackingconfigarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GuardDuty::Detector": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html",
      "Properties": {
        "DataSources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html#cfn-guardduty-detector-datasources",
          "Required": false,
          "Type": "CFNDataSourceConfigurations",
          "UpdateType": "Mutable"
        },
        "Enable": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html#cfn-guardduty-detector-enable",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "FindingPublishingFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html#cfn-guardduty-detector-findingpublishingfrequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GuardDuty::Detector.FindingPublishingFrequency"
          }
        }
      }
    },
    "AWS::GuardDuty::Filter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GuardDuty::Filter.Action"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DetectorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-detectorid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "FindingCriteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-findingcriteria",
          "Required": true,
          "Type": "FindingCriteria",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Rank": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-rank",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GuardDuty::IPSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html",
      "Properties": {
        "Activate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-activate",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DetectorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-detectorid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-format",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GuardDuty::IPSet.Format"
          }
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-location",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::GuardDuty::Master": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html",
      "Properties": {
        "DetectorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-detectorid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "InvitationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-invitationid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MasterId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-masterid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::GuardDuty::Member": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html",
      "Properties": {
        "DetectorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-detectorid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DisableEmailNotification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-disableemailnotification",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Email": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-email",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MemberId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-memberid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Message": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-message",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::GuardDuty::Member.Status"
          }
        }
      }
    },
    "AWS::GuardDuty::ThreatIntelSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html",
      "Properties": {
        "Activate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-activate",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DetectorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-detectorid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Format": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-format",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::GuardDuty::ThreatIntelSet.Format"
          }
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-location",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::AccessKey": {
      "Attributes": {
        "SecretAccessKey": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html",
      "Properties": {
        "Serial": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-serial",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::AccessKey.Active"
          }
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IAM::Group": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html",
      "Properties": {
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-groupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ManagedPolicyArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-managepolicyarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::IAM::ManagedPolicy.Arns",
            "ValueType": "AWS::IAM::ManagedPolicy.Arn"
          }
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Path.Path"
          }
        },
        "Policies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-policies",
          "DuplicatesAllowed": false,
          "ItemType": "Policy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::InstanceProfile": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html",
      "Properties": {
        "InstanceProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-instanceprofilename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Path.Path"
          }
        },
        "Roles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-roles",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::IAM::InstanceProfile.Roles",
            "ValueType": "AWS::IAM::InstanceProfile.Role"
          }
        }
      }
    },
    "AWS::IAM::ManagedPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Groups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-groups",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ManagedPolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-managedpolicyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-ec2-dhcpoptions-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Path.Path"
          }
        },
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::ManagedPolicy.PolicyDocument"
          }
        },
        "Roles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-roles",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Users": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-users",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::OIDCProvider": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html",
      "Properties": {
        "ClientIdList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-clientidlist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::OIDCProvider.ClientIdList"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ThumbprintList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-thumbprintlist",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::OIDCProvider.ThumbprintList"
          }
        },
        "Url": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-url",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::OIDCProvider.Url"
          }
        }
      }
    },
    "AWS::IAM::Policy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html",
      "Properties": {
        "Groups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-groups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Policy.PolicyName"
          }
        },
        "Roles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-roles",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Users": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-users",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::Role": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "RoleId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html",
      "Properties": {
        "AssumeRolePolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::AssumeRole.Document"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ManagedPolicyArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-managepolicyarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::IAM::ManagedPolicy.Arns",
            "ValueType": "AWS::IAM::ManagedPolicy.Arn"
          }
        },
        "MaxSessionDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-maxsessionduration",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.MaxSessionDuration"
          }
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::Path.Path"
          }
        },
        "PermissionsBoundary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Policies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies",
          "DuplicatesAllowed": true,
          "ItemType": "Policy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RoleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-rolename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::SAMLProvider": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html#cfn-iam-samlprovider-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::SAMLProvider.Name"
          }
        },
        "SamlMetadataDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html#cfn-iam-samlprovider-samlmetadatadocument",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::SAMLProvider.SamlMetadataDocument"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html#cfn-iam-samlprovider-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::ServerCertificate": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html",
      "Properties": {
        "CertificateBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html#cfn-iam-servercertificate-certificatebody",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::ServerCertificate.CertificateBody"
          }
        },
        "CertificateChain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html#cfn-iam-servercertificate-certificatechain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::ServerCertificate.CertificateChain"
          }
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html#cfn-iam-servercertificate-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::ServerCertificate.Path"
          }
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html#cfn-iam-servercertificate-privatekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::ServerCertificate.PrivateKey"
          }
        },
        "ServerCertificateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html#cfn-iam-servercertificate-servercertificatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::ServerCertificate.ServerCertificateName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html#cfn-iam-servercertificate-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::ServiceLinkedRole": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html",
      "Properties": {
        "AWSServiceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-awsservicename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CustomSuffix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-customsuffix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::User": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html",
      "Properties": {
        "Groups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-groups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::IAM::Group.Names",
            "ValueType": "AWS::IAM::Group.Name"
          }
        },
        "LoginProfile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-loginprofile",
          "Required": false,
          "Type": "LoginProfile",
          "UpdateType": "Mutable"
        },
        "ManagedPolicyArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-managepolicyarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ListValueType": "AWS::IAM::ManagedPolicy.Arns",
            "ValueType": "AWS::IAM::ManagedPolicy.Arn"
          }
        },
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Path.Path"
          }
        },
        "PermissionsBoundary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-permissionsboundary",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Policies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-policies",
          "DuplicatesAllowed": true,
          "ItemType": "Policy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-username",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IAM::UserToGroupAddition": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html",
      "Properties": {
        "GroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-groupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Users": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-users",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IAM::VirtualMFADevice": {
      "Attributes": {
        "SerialNumber": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html",
      "Properties": {
        "Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html#cfn-iam-virtualmfadevice-path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::VirtualMFADevice.Path"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html#cfn-iam-virtualmfadevice-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Users": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html#cfn-iam-virtualmfadevice-users",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VirtualMfaDeviceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html#cfn-iam-virtualmfadevice-virtualmfadevicename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::VirtualMFADevice.VirtualMfaDeviceName"
          }
        }
      }
    },
    "AWS::ImageBuilder::Component": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Encrypted": {
          "PrimitiveType": "Boolean"
        },
        "Type": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html",
      "Properties": {
        "ChangeDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-changedescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Data": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-data",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::Component.Data"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Platform": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-platform",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::Component.Platform"
          }
        },
        "SupportedOsVersions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-supportedosversions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Uri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-uri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ImageBuilder::ContainerRecipe": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html",
      "Properties": {
        "Components": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-components",
          "ItemType": "ComponentConfiguration",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ContainerType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-containertype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::ContainerRecipe.ContainerType"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DockerfileTemplateData": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-dockerfiletemplatedata",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DockerfileTemplateUri": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-dockerfiletemplateuri",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageOsVersionOverride": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-imageosversionoverride",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ParentImage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-parentimage",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PlatformOverride": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-platformoverride",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::ContainerRecipe.PlatformOverride"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "TargetRepository": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-targetrepository",
          "Required": true,
          "Type": "TargetContainerRepository",
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "WorkingDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html#cfn-imagebuilder-containerrecipe-workingdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ImageBuilder::DistributionConfiguration": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html#cfn-imagebuilder-distributionconfiguration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Distributions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html#cfn-imagebuilder-distributionconfiguration-distributions",
          "ItemType": "Distribution",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html#cfn-imagebuilder-distributionconfiguration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html#cfn-imagebuilder-distributionconfiguration-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ImageBuilder::Image": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ImageId": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html",
      "Properties": {
        "ContainerRecipeArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-containerrecipearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DistributionConfigurationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-distributionconfigurationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EnhancedImageMetadataEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-enhancedimagemetadataenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ImageRecipeArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-imagerecipearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ImageTestsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-imagetestsconfiguration",
          "Required": false,
          "Type": "ImageTestsConfiguration",
          "UpdateType": "Immutable"
        },
        "InfrastructureConfigurationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-infrastructureconfigurationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ImageBuilder::ImagePipeline": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html",
      "Properties": {
        "ContainerRecipeArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-containerrecipearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DistributionConfigurationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-distributionconfigurationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnhancedImageMetadataEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-enhancedimagemetadataenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageRecipeArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-imagerecipearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageTestsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-imagetestsconfiguration",
          "Required": false,
          "Type": "ImageTestsConfiguration",
          "UpdateType": "Mutable"
        },
        "InfrastructureConfigurationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-infrastructureconfigurationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-schedule",
          "Required": false,
          "Type": "Schedule",
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ImageBuilder::ImagePipeline.Status"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ImageBuilder::ImageRecipe": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html",
      "Properties": {
        "BlockDeviceMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-blockdevicemappings",
          "ItemType": "InstanceBlockDeviceMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Components": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-components",
          "ItemType": "ComponentConfiguration",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ParentImage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-parentimage",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Immutable"
        },
        "Version": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-version",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "WorkingDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-workingdirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ImageBuilder::InfrastructureConfiguration": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-instanceprofilename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstanceTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-instancetypes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "KeyPair": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-keypair",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Logging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-logging",
          "PrimitiveType": "Json",
          "Required": false,
          "Type": "Logging",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ResourceTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-resourcetags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SnsTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-snstopicarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "TerminateInstanceOnFailure": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-terminateinstanceonfailure",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Inspector::AssessmentTarget": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html",
      "Properties": {
        "AssessmentTargetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html#cfn-inspector-assessmenttarget-assessmenttargetname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ResourceGroupArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html#cfn-inspector-assessmenttarget-resourcegrouparn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Inspector::AssessmentTemplate": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html",
      "Properties": {
        "AssessmentTargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-assessmenttargetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "AssessmentTemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-assessmenttemplatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DurationInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-durationinseconds",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Inspector::AssessmentTemplate.DurationInSeconds"
          }
        },
        "RulesPackageArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-rulespackagearns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "UserAttributesForFindings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-userattributesforfindings",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Inspector::ResourceGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html",
      "Properties": {
        "ResourceGroupTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html#cfn-inspector-resourcegroup-resourcegrouptags",
          "ItemType": "Tag",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT1Click::Device": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "DeviceId": {
          "PrimitiveType": "String"
        },
        "Enabled": {
          "PrimitiveType": "Boolean"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html",
      "Properties": {
        "DeviceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html#cfn-iot1click-device-deviceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html#cfn-iot1click-device-enabled",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT1Click::Placement": {
      "Attributes": {
        "PlacementName": {
          "PrimitiveType": "String"
        },
        "ProjectName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html",
      "Properties": {
        "AssociatedDevices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-associateddevices",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-attributes",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PlacementName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-placementname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ProjectName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-projectname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT1Click::Project": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ProjectName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html#cfn-iot1click-project-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PlacementTemplate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html#cfn-iot1click-project-placementtemplate",
          "Required": true,
          "Type": "PlacementTemplate",
          "UpdateType": "Mutable"
        },
        "ProjectName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html#cfn-iot1click-project-projectname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT::AccountAuditConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html",
      "Properties": {
        "AccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-accountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::AccountAuditConfiguration.AccountId"
          }
        },
        "AuditCheckConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations",
          "Required": true,
          "Type": "AuditCheckConfigurations",
          "UpdateType": "Mutable"
        },
        "AuditNotificationTargetConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-auditnotificationtargetconfigurations",
          "Required": false,
          "Type": "AuditNotificationTargetConfigurations",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::AccountAuditConfiguration.RoleArn"
          }
        }
      }
    },
    "AWS::IoT::Authorizer": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html",
      "Properties": {
        "AuthorizerFunctionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-authorizerfunctionarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AuthorizerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-authorizername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::Authorizer.AuthorizerName"
          }
        },
        "SigningDisabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-signingdisabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::Authorizer.Status"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TokenKeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-tokenkeyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenSigningPublicKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-tokensigningpublickeys",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::Certificate": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html",
      "Properties": {
        "CACertificatePem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-cacertificatepem",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::Certificate.CACertificatePem"
          }
        },
        "CertificateMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::Certificate.CertificateMode"
          }
        },
        "CertificatePem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatepem",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::Certificate.CertificatePem"
          }
        },
        "CertificateSigningRequest": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatesigningrequest",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::Certificate.Status"
          }
        }
      }
    },
    "AWS::IoT::CustomMetric": {
      "Attributes": {
        "MetricArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html",
      "Properties": {
        "DisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-displayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-metricname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::CustomMetric.MetricName"
          }
        },
        "MetricType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-metrictype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::CustomMetric.MetricType"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::Dimension": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::Dimension.Name"
          }
        },
        "StringValues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-stringvalues",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::Dimension.StringValues"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::Dimension.Type"
          }
        }
      }
    },
    "AWS::IoT::MitigationAction": {
      "Attributes": {
        "MitigationActionArn": {
          "PrimitiveType": "String"
        },
        "MitigationActionId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html",
      "Properties": {
        "ActionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-actionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::MitigationAction.ActionName"
          }
        },
        "ActionParams": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-actionparams",
          "Required": true,
          "Type": "ActionParams",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::Policy": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html",
      "Properties": {
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT::PolicyPrincipalAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html",
      "Properties": {
        "PolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-policyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT::ProvisioningTemplate": {
      "Attributes": {
        "TemplateArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreProvisioningHook": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-preprovisioninghook",
          "Required": false,
          "Type": "ProvisioningHook",
          "UpdateType": "Mutable"
        },
        "ProvisioningRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-provisioningrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TemplateBody": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-templatebody",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TemplateName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-templatename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::ProvisioningTemplate.TemplateName"
          }
        }
      }
    },
    "AWS::IoT::ScheduledAudit": {
      "Attributes": {
        "ScheduledAuditArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html",
      "Properties": {
        "DayOfMonth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-dayofmonth",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::ScheduledAudit.DayOfMonth"
          }
        },
        "DayOfWeek": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-dayofweek",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::ScheduledAudit.DayOfWeek"
          }
        },
        "Frequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-frequency",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::ScheduledAudit.Frequency"
          }
        },
        "ScheduledAuditName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-scheduledauditname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::ScheduledAudit.ScheduledAuditName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetCheckNames": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-targetchecknames",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::SecurityProfile": {
      "Attributes": {
        "SecurityProfileArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html",
      "Properties": {
        "AdditionalMetricsToRetainV2": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-additionalmetricstoretainv2",
          "DuplicatesAllowed": false,
          "ItemType": "MetricToRetain",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AlertTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-alerttargets",
          "ItemType": "AlertTarget",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Behaviors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-behaviors",
          "DuplicatesAllowed": false,
          "ItemType": "Behavior",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecurityProfileDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-securityprofiledescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-securityprofilename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoT::SecurityProfile.SecurityProfileName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-targetarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::Thing": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html",
      "Properties": {
        "AttributePayload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-attributepayload",
          "Required": false,
          "Type": "AttributePayload",
          "UpdateType": "Mutable"
        },
        "ThingName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-thingname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT::ThingPrincipalAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html",
      "Properties": {
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ThingName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-thingname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoT::TopicRule": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html",
      "Properties": {
        "RuleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-rulename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TopicRulePayload": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-topicrulepayload",
          "Required": true,
          "Type": "TopicRulePayload",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoT::TopicRuleDestination": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "StatusReason": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html",
      "Properties": {
        "HttpUrlProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html#cfn-iot-topicruledestination-httpurlproperties",
          "Required": false,
          "Type": "HttpUrlDestinationSummary",
          "UpdateType": "Immutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html#cfn-iot-topicruledestination-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoT::TopicRuleDestination.Status"
          }
        },
        "VpcProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html#cfn-iot-topicruledestination-vpcproperties",
          "Required": false,
          "Type": "VpcDestinationProperties",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::IoTAnalytics::Channel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html",
      "Properties": {
        "ChannelName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-channelname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ChannelStorage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-channelstorage",
          "Required": false,
          "Type": "ChannelStorage",
          "UpdateType": "Mutable"
        },
        "RetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-retentionperiod",
          "Required": false,
          "Type": "RetentionPeriod",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Dataset": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html",
      "Properties": {
        "Actions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-actions",
          "ItemType": "Action",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ContentDeliveryRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-contentdeliveryrules",
          "ItemType": "DatasetContentDeliveryRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DatasetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-datasetname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LateDataRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-latedatarules",
          "ItemType": "LateDataRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-retentionperiod",
          "Required": false,
          "Type": "RetentionPeriod",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Triggers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-triggers",
          "ItemType": "Trigger",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VersioningConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-versioningconfiguration",
          "Required": false,
          "Type": "VersioningConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Datastore": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html",
      "Properties": {
        "DatastoreName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-datastorename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DatastoreStorage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-datastorestorage",
          "Required": false,
          "Type": "DatastoreStorage",
          "UpdateType": "Mutable"
        },
        "FileFormatConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-fileformatconfiguration",
          "Required": false,
          "Type": "FileFormatConfiguration",
          "UpdateType": "Mutable"
        },
        "RetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-retentionperiod",
          "Required": false,
          "Type": "RetentionPeriod",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTAnalytics::Pipeline": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html",
      "Properties": {
        "PipelineActivities": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-pipelineactivities",
          "ItemType": "Activity",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PipelineName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-pipelinename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::DetectorModel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html",
      "Properties": {
        "DetectorModelDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-detectormodeldefinition",
          "Required": false,
          "Type": "DetectorModelDefinition",
          "UpdateType": "Mutable"
        },
        "DetectorModelDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-detectormodeldescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DetectorModelName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-detectormodelname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EvaluationMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-evaluationmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-key",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTEvents::Input": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html",
      "Properties": {
        "InputDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-inputdefinition",
          "Required": false,
          "Type": "InputDefinition",
          "UpdateType": "Mutable"
        },
        "InputDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-inputdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InputName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-inputname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AccessPolicy": {
      "Attributes": {
        "AccessPolicyArn": {
          "PrimitiveType": "String"
        },
        "AccessPolicyId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html",
      "Properties": {
        "AccessPolicyIdentity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html#cfn-iotsitewise-accesspolicy-accesspolicyidentity",
          "Required": true,
          "Type": "AccessPolicyIdentity",
          "UpdateType": "Mutable"
        },
        "AccessPolicyPermission": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html#cfn-iotsitewise-accesspolicy-accesspolicypermission",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AccessPolicyResource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html#cfn-iotsitewise-accesspolicy-accesspolicyresource",
          "Required": true,
          "Type": "AccessPolicyResource",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::Asset": {
      "Attributes": {
        "AssetArn": {
          "PrimitiveType": "String"
        },
        "AssetId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html",
      "Properties": {
        "AssetHierarchies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assethierarchies",
          "ItemType": "AssetHierarchy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AssetModelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetmodelid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Asset.AssetModelId"
          }
        },
        "AssetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Asset.AssetName"
          }
        },
        "AssetProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetproperties",
          "ItemType": "AssetProperty",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::AssetModel": {
      "Attributes": {
        "AssetModelArn": {
          "PrimitiveType": "String"
        },
        "AssetModelId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html",
      "Properties": {
        "AssetModelCompositeModels": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodels",
          "ItemType": "AssetModelCompositeModel",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AssetModelDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodeldescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelDescription"
          }
        },
        "AssetModelHierarchies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodelhierarchies",
          "ItemType": "AssetModelHierarchy",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AssetModelName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodelname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::AssetModel.AssetModelName"
          }
        },
        "AssetModelProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodelproperties",
          "ItemType": "AssetModelProperty",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::Dashboard": {
      "Attributes": {
        "DashboardArn": {
          "PrimitiveType": "String"
        },
        "DashboardId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html",
      "Properties": {
        "DashboardDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html#cfn-iotsitewise-dashboard-dashboarddefinition",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Dashboard.DashboardDefinition"
          }
        },
        "DashboardDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html#cfn-iotsitewise-dashboard-dashboarddescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Dashboard.DashboardDescription"
          }
        },
        "DashboardName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html#cfn-iotsitewise-dashboard-dashboardname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Dashboard.DashboardName"
          }
        },
        "ProjectId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html#cfn-iotsitewise-dashboard-projectid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Dashboard.ProjectId"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html#cfn-iotsitewise-dashboard-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::Gateway": {
      "Attributes": {
        "GatewayId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html",
      "Properties": {
        "GatewayCapabilitySummaries": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html#cfn-iotsitewise-gateway-gatewaycapabilitysummaries",
          "DuplicatesAllowed": false,
          "ItemType": "GatewayCapabilitySummary",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "GatewayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html#cfn-iotsitewise-gateway-gatewayname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Gateway.GatewayName"
          }
        },
        "GatewayPlatform": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html#cfn-iotsitewise-gateway-gatewayplatform",
          "Required": true,
          "Type": "GatewayPlatform",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html#cfn-iotsitewise-gateway-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::Portal": {
      "Attributes": {
        "PortalArn": {
          "PrimitiveType": "String"
        },
        "PortalClientId": {
          "PrimitiveType": "String"
        },
        "PortalId": {
          "PrimitiveType": "String"
        },
        "PortalStartUrl": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html",
      "Properties": {
        "PortalAuthMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html#cfn-iotsitewise-portal-portalauthmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PortalContactEmail": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html#cfn-iotsitewise-portal-portalcontactemail",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Portal.PortalContactEmail"
          }
        },
        "PortalDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html#cfn-iotsitewise-portal-portaldescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Portal.PortalDescription"
          }
        },
        "PortalName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html#cfn-iotsitewise-portal-portalname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Portal.PortalName"
          }
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html#cfn-iotsitewise-portal-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Portal.RoleArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html#cfn-iotsitewise-portal-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::IoTSiteWise::Project": {
      "Attributes": {
        "ProjectArn": {
          "PrimitiveType": "String"
        },
        "ProjectId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html",
      "Properties": {
        "PortalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html#cfn-iotsitewise-project-portalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Project.PortalId"
          }
        },
        "ProjectDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html#cfn-iotsitewise-project-projectdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Project.ProjectDescription"
          }
        },
        "ProjectName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html#cfn-iotsitewise-project-projectname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IoTSiteWise::Project.ProjectName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html#cfn-iotsitewise-project-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KMS::Alias": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html",
      "Properties": {
        "AliasName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-aliasname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KMS::Alias.AliasName"
          }
        },
        "TargetKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-targetkeyid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KMS::Alias.TargetKeyId"
          }
        }
      }
    },
    "AWS::KMS::Key": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "KeyId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableKeyRotation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enablekeyrotation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KeyPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keypolicy",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "KeySpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keyspec",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KMS::Key.KeySpec"
          }
        },
        "KeyUsage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keyusage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KMS::Key.KeyUsage"
          }
        },
        "PendingWindowInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-pendingwindowindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::KMS::Key.PendingWindowInDays"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Kinesis::Stream": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Kinesis::Stream.Name"
          }
        },
        "RetentionPeriodHours": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-retentionperiodhours",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Kinesis::Stream.RetentionPeriodHours"
          }
        },
        "ShardCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-shardcount",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Kinesis::Stream.ShardCount"
          }
        },
        "StreamEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-streamencryption",
          "Required": false,
          "Type": "StreamEncryption",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Kinesis::StreamConsumer": {
      "Attributes": {
        "ConsumerARN": {
          "PrimitiveType": "String"
        },
        "ConsumerCreationTimestamp": {
          "PrimitiveType": "String"
        },
        "ConsumerName": {
          "PrimitiveType": "String"
        },
        "ConsumerStatus": {
          "PrimitiveType": "String"
        },
        "StreamARN": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html",
      "Properties": {
        "ConsumerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html#cfn-kinesis-streamconsumer-consumername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "StreamARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html#cfn-kinesis-streamconsumer-streamarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::Application": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html",
      "Properties": {
        "ApplicationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-applicationconfiguration",
          "Required": false,
          "Type": "ApplicationConfiguration",
          "UpdateType": "Mutable"
        },
        "ApplicationDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-applicationdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-applicationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RuntimeEnvironment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-runtimeenvironment",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisAnalyticsV2::Application.RuntimeEnvironment"
          }
        },
        "ServiceExecutionRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-serviceexecutionrole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CloudWatchLoggingOption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption",
          "Required": true,
          "Type": "CloudWatchLoggingOption",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationOutput": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html#cfn-kinesisanalyticsv2-applicationoutput-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Output": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html#cfn-kinesisanalyticsv2-applicationoutput-output",
          "Required": true,
          "Type": "Output",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html",
      "Properties": {
        "ApplicationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-applicationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ReferenceDataSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource",
          "Required": true,
          "Type": "ReferenceDataSource",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::KinesisFirehose::DeliveryStream": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html",
      "Properties": {
        "DeliveryStreamEncryptionConfigurationInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamencryptionconfigurationinput",
          "Required": false,
          "Type": "DeliveryStreamEncryptionConfigurationInput",
          "UpdateType": "Mutable"
        },
        "DeliveryStreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamName"
          }
        },
        "DeliveryStreamType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamType"
          }
        },
        "ElasticsearchDestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration",
          "Required": false,
          "Type": "ElasticsearchDestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "ExtendedS3DestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration",
          "Required": false,
          "Type": "ExtendedS3DestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "HttpEndpointDestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-httpendpointdestinationconfiguration",
          "Required": false,
          "Type": "HttpEndpointDestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "KinesisStreamSourceConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration",
          "Required": false,
          "Type": "KinesisStreamSourceConfiguration",
          "UpdateType": "Immutable"
        },
        "RedshiftDestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration",
          "Required": false,
          "Type": "RedshiftDestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "S3DestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration",
          "Required": false,
          "Type": "S3DestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "SplunkDestinationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration",
          "Required": false,
          "Type": "SplunkDestinationConfiguration",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Alias": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "FunctionVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProvisionedConcurrencyConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig",
          "Required": false,
          "Type": "ProvisionedConcurrencyConfiguration",
          "UpdateType": "Mutable"
        },
        "RoutingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-routingconfig",
          "Required": false,
          "Type": "AliasRoutingConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::CodeSigningConfig": {
      "Attributes": {
        "CodeSigningConfigArn": {
          "PrimitiveType": "String"
        },
        "CodeSigningConfigId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html",
      "Properties": {
        "AllowedPublishers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html#cfn-lambda-codesigningconfig-allowedpublishers",
          "Required": true,
          "Type": "AllowedPublishers",
          "UpdateType": "Mutable"
        },
        "CodeSigningPolicies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html#cfn-lambda-codesigningconfig-codesigningpolicies",
          "Required": false,
          "Type": "CodeSigningPolicies",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html#cfn-lambda-codesigningconfig-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::EventInvokeConfig": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html",
      "Properties": {
        "DestinationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-destinationconfig",
          "Required": false,
          "Type": "DestinationConfig",
          "UpdateType": "Mutable"
        },
        "FunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-functionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MaximumEventAgeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumeventageinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumRetryAttempts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumretryattempts",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Qualifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-qualifier",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Lambda::EventSourceMapping": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html",
      "Properties": {
        "BatchSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.BatchSize"
          }
        },
        "BisectBatchOnFunctionError": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DestinationConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig",
          "Required": false,
          "Type": "DestinationConfig",
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventSourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.EventSourceArn"
          }
        },
        "FunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.FunctionName"
          }
        },
        "FunctionResponseTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.FunctionResponseTypes"
          }
        },
        "MaximumBatchingWindowInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.MaximumBatchingWindowInSeconds"
          }
        },
        "MaximumRecordAgeInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.MaximumRecordAgeInSeconds"
          }
        },
        "MaximumRetryAttempts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.MaximumRetryAttempts"
          }
        },
        "ParallelizationFactor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-parallelizationfactor",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.ParallelizationFactor"
          }
        },
        "PartialBatchResponse": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-partialbatchresponse",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Queues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-queues",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.Queues"
          }
        },
        "SelfManagedEventSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-selfmanagedeventsource",
          "Required": false,
          "Type": "SelfManagedEventSource",
          "UpdateType": "Immutable"
        },
        "SourceAccessConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-sourceaccessconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "SourceAccessConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StartingPosition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.StartingPosition"
          }
        },
        "Topics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-topics",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::EventSourceMapping.Topics"
          }
        },
        "TumblingWindowInSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-tumblingwindowinseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::Function": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html",
      "Properties": {
        "Code": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code",
          "Required": true,
          "Type": "Code",
          "UpdateType": "Mutable"
        },
        "CodeSigningConfigArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-codesigningconfigarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeadLetterConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-deadletterconfig",
          "Required": false,
          "Type": "DeadLetterConfig",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-environment",
          "Required": false,
          "Type": "Environment",
          "UpdateType": "Mutable"
        },
        "FileSystemConfigs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-filesystemconfigs",
          "DuplicatesAllowed": false,
          "ItemType": "FileSystemConfig",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "FunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Handler": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ImageConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig",
          "Required": false,
          "Type": "ImageConfig",
          "UpdateType": "Mutable"
        },
        "KmsKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Layers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MemorySize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::Function.MemorySize"
          }
        },
        "PackageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-packagetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReservedConcurrentExecutions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::IAM::Role.Arn"
          }
        },
        "Runtime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "LambdaRuntime"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Timeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Lambda::Function.Timeout"
          }
        },
        "TracingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig",
          "Required": false,
          "Type": "TracingConfig",
          "UpdateType": "Mutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Lambda::LayerVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html",
      "Properties": {
        "CompatibleRuntimes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatibleruntimes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Content": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-content",
          "Required": true,
          "Type": "Content",
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LayerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-layername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LicenseInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-licenseinfo",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Lambda::LayerVersionPermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "LayerVersionArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-layerversionarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "OrganizationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-organizationid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Lambda::Permission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "EventSourceToken": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-eventsourcetoken",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "FunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-functionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SourceAccount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourceaccount",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourcearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Lambda::Version": {
      "Attributes": {
        "Version": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html",
      "Properties": {
        "CodeSha256": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-codesha256",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FunctionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-functionname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProvisionedConcurrencyConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-provisionedconcurrencyconfig",
          "Required": false,
          "Type": "ProvisionedConcurrencyConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::Grant": {
      "Attributes": {
        "GrantArn": {
          "PrimitiveType": "String"
        },
        "Version": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html",
      "Properties": {
        "AllowedOperations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html#cfn-licensemanager-grant-allowedoperations",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "GrantName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html#cfn-licensemanager-grant-grantname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HomeRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html#cfn-licensemanager-grant-homeregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LicenseArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html#cfn-licensemanager-grant-licensearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Principals": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html#cfn-licensemanager-grant-principals",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html#cfn-licensemanager-grant-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::LicenseManager::License": {
      "Attributes": {
        "LicenseArn": {
          "PrimitiveType": "String"
        },
        "Version": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html",
      "Properties": {
        "Beneficiary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-beneficiary",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ConsumptionConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-consumptionconfiguration",
          "Required": true,
          "Type": "ConsumptionConfiguration",
          "UpdateType": "Mutable"
        },
        "Entitlements": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-entitlements",
          "DuplicatesAllowed": false,
          "ItemType": "Entitlement",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "HomeRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-homeregion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Issuer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-issuer",
          "Required": true,
          "Type": "IssuerData",
          "UpdateType": "Mutable"
        },
        "LicenseMetadata": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-licensemetadata",
          "DuplicatesAllowed": false,
          "ItemType": "Metadata",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LicenseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-licensename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ProductName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-productname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ProductSKU": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-productsku",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::LicenseManager::License.ProductSKU"
          }
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Validity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html#cfn-licensemanager-license-validity",
          "Required": true,
          "Type": "ValidityDateFormat",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Logs::Destination": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html",
      "Properties": {
        "DestinationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DestinationPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationpolicy",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-targetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Logs::LogGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html",
      "Properties": {
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Logs::LogGroup.KmsKeyId"
          }
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-loggroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Logs::LogGroup.LogGroupName"
          }
        },
        "RetentionInDays": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-retentionindays",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Logs::LogGroup.Retention"
          }
        }
      }
    },
    "AWS::Logs::LogStream": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html",
      "Properties": {
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-loggroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "LogStreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-logstreamname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Logs::MetricFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html",
      "Properties": {
        "FilterPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-filterpattern",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-loggroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MetricTransformations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-metrictransformations",
          "DuplicatesAllowed": false,
          "ItemType": "MetricTransformation",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Logs::SubscriptionFilter": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html",
      "Properties": {
        "DestinationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-destinationarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "FilterPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-filterpattern",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "LogGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-loggroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::LookoutVision::Project": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutvision-project.html",
      "Properties": {
        "ProjectName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutvision-project.html#cfn-lookoutvision-project-projectname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::LookoutVision::Project.ProjectName"
          }
        }
      }
    },
    "AWS::MSK::Cluster": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html",
      "Properties": {
        "BrokerNodeGroupInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-brokernodegroupinfo",
          "Required": true,
          "Type": "BrokerNodeGroupInfo",
          "UpdateType": "Mutable"
        },
        "ClientAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-clientauthentication",
          "Required": false,
          "Type": "ClientAuthentication",
          "UpdateType": "Immutable"
        },
        "ClusterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-clustername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ConfigurationInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-configurationinfo",
          "Required": false,
          "Type": "ConfigurationInfo",
          "UpdateType": "Mutable"
        },
        "EncryptionInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-encryptioninfo",
          "Required": false,
          "Type": "EncryptionInfo",
          "UpdateType": "Immutable"
        },
        "EnhancedMonitoring": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-enhancedmonitoring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KafkaVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-kafkaversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LoggingInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-logginginfo",
          "Required": false,
          "Type": "LoggingInfo",
          "UpdateType": "Mutable"
        },
        "NumberOfBrokerNodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-numberofbrokernodes",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OpenMonitoring": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-openmonitoring",
          "Required": false,
          "Type": "OpenMonitoring",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MWAA::Environment": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "WebserverUrl": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html",
      "Properties": {
        "AirflowConfigurationOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-airflowconfigurationoptions",
          "Required": false,
          "Type": "AirflowConfigurationOptions",
          "UpdateType": "Mutable"
        },
        "AirflowVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-airflowversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.AirflowVersion"
          }
        },
        "DagS3Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-dags3path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.DagS3Path"
          }
        },
        "EnvironmentClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-environmentclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.EnvironmentClass"
          }
        },
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-executionrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.ExecutionRoleArn"
          }
        },
        "KmsKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-kmskey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.KmsKey"
          }
        },
        "LoggingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-loggingconfiguration",
          "Required": false,
          "Type": "LoggingConfiguration",
          "UpdateType": "Mutable"
        },
        "MaxWorkers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-maxworkers",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.Name"
          }
        },
        "NetworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-networkconfiguration",
          "Required": false,
          "Type": "NetworkConfiguration",
          "UpdateType": "Mutable"
        },
        "PluginsS3ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-pluginss3objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PluginsS3Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-pluginss3path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.PluginsS3Path"
          }
        },
        "RequirementsS3ObjectVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-requirementss3objectversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequirementsS3Path": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-requirementss3path",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.RequirementsS3Path"
          }
        },
        "SourceBucketArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-sourcebucketarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.SourceBucketArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-tags",
          "Required": false,
          "Type": "TagMap",
          "UpdateType": "Mutable"
        },
        "WebserverAccessMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-webserveraccessmode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.WebserverAccessMode"
          }
        },
        "WeeklyMaintenanceWindowStart": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-weeklymaintenancewindowstart",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MWAA::Environment.WeeklyMaintenanceWindowStart"
          }
        }
      }
    },
    "AWS::Macie::CustomDataIdentifier": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CreatedAt": {
          "PrimitiveType": "String"
        },
        "Deleted": {
          "PrimitiveType": "Boolean"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html#cfn-macie-customdataidentifier-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IgnoreWords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html#cfn-macie-customdataidentifier-ignorewords",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Keywords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html#cfn-macie-customdataidentifier-keywords",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "MaximumMatchDistance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html#cfn-macie-customdataidentifier-maximummatchdistance",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html#cfn-macie-customdataidentifier-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Regex": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html#cfn-macie-customdataidentifier-regex",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Macie::FindingsFilter": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "FindingsFilterListItems": {
          "ItemType": "FindingsFilterListItem",
          "Type": "List"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html#cfn-macie-findingsfilter-action",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Macie::FindingsFilter.Action"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html#cfn-macie-findingsfilter-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FindingCriteria": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html#cfn-macie-findingsfilter-findingcriteria",
          "Required": true,
          "Type": "FindingCriteria",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html#cfn-macie-findingsfilter-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Position": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html#cfn-macie-findingsfilter-position",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Macie::Session": {
      "Attributes": {
        "AwsAccountId": {
          "PrimitiveType": "String"
        },
        "ServiceRole": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-session.html",
      "Properties": {
        "FindingPublishingFrequency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-session.html#cfn-macie-session-findingpublishingfrequency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Macie::Session.FindingPublishingFrequency"
          }
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-session.html#cfn-macie-session-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Macie::Session.Status"
          }
        }
      }
    },
    "AWS::ManagedBlockchain::Member": {
      "Attributes": {
        "MemberId": {
          "PrimitiveType": "String"
        },
        "NetworkId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html",
      "Properties": {
        "InvitationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-invitationid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MemberConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-memberconfiguration",
          "Required": true,
          "Type": "MemberConfiguration",
          "UpdateType": "Mutable"
        },
        "NetworkConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-networkconfiguration",
          "Required": false,
          "Type": "NetworkConfiguration",
          "UpdateType": "Mutable"
        },
        "NetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-networkid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ManagedBlockchain::Node": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "MemberId": {
          "PrimitiveType": "String"
        },
        "NetworkId": {
          "PrimitiveType": "String"
        },
        "NodeId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html",
      "Properties": {
        "MemberId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html#cfn-managedblockchain-node-memberid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "NetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html#cfn-managedblockchain-node-networkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "NodeConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html#cfn-managedblockchain-node-nodeconfiguration",
          "Required": true,
          "Type": "NodeConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::Flow": {
      "Attributes": {
        "FlowArn": {
          "PrimitiveType": "String"
        },
        "FlowAvailabilityZone": {
          "PrimitiveType": "String"
        },
        "IngestIp": {
          "PrimitiveType": "String"
        },
        "SourceArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html",
      "Properties": {
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Source": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-source",
          "Required": true,
          "Type": "Source",
          "UpdateType": "Mutable"
        },
        "SourceFailoverConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-sourcefailoverconfig",
          "Required": false,
          "Type": "FailoverConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowEntitlement": {
      "Attributes": {
        "EntitlementArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html",
      "Properties": {
        "DataTransferSubscriberFeePercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html#cfn-mediaconnect-flowentitlement-datatransfersubscriberfeepercent",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html#cfn-mediaconnect-flowentitlement-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html#cfn-mediaconnect-flowentitlement-encryption",
          "Required": false,
          "Type": "Encryption",
          "UpdateType": "Mutable"
        },
        "EntitlementStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html#cfn-mediaconnect-flowentitlement-entitlementstatus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowEntitlement.EntitlementStatus"
          }
        },
        "FlowArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html#cfn-mediaconnect-flowentitlement-flowarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html#cfn-mediaconnect-flowentitlement-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Subscribers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html#cfn-mediaconnect-flowentitlement-subscribers",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowOutput": {
      "Attributes": {
        "OutputArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html",
      "Properties": {
        "CidrAllowList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-cidrallowlist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-destination",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Encryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-encryption",
          "Required": false,
          "Type": "Encryption",
          "UpdateType": "Mutable"
        },
        "FlowArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-flowarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MaxLatency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-maxlatency",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowOutput.Protocol"
          }
        },
        "RemoteId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-remoteid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SmoothingLatency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-smoothinglatency",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StreamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-streamid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcInterfaceAttachment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-vpcinterfaceattachment",
          "Required": false,
          "Type": "VpcInterfaceAttachment",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowSource": {
      "Attributes": {
        "IngestIp": {
          "PrimitiveType": "String"
        },
        "SourceArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html",
      "Properties": {
        "Decryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-decryption",
          "Required": false,
          "Type": "Encryption",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EntitlementArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-entitlementarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FlowArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-flowarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IngestPort": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-ingestport",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxBitrate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-maxbitrate",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxLatency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-maxlatency",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-protocol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaConnect::FlowSource.Protocol"
          }
        },
        "StreamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-streamid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcInterfaceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-vpcinterfacename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WhitelistCidr": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html#cfn-mediaconnect-flowsource-whitelistcidr",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConnect::FlowVpcInterface": {
      "Attributes": {
        "NetworkInterfaceIds": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html",
      "Properties": {
        "FlowArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html#cfn-mediaconnect-flowvpcinterface-flowarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html#cfn-mediaconnect-flowvpcinterface-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html#cfn-mediaconnect-flowvpcinterface-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html#cfn-mediaconnect-flowvpcinterface-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html#cfn-mediaconnect-flowvpcinterface-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConvert::JobTemplate": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html",
      "Properties": {
        "AccelerationSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-accelerationsettings",
          "Required": false,
          "Type": "AccelerationSettings",
          "UpdateType": "Mutable"
        },
        "Category": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-category",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HopDestinations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-hopdestinations",
          "ItemType": "HopDestination",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-priority",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Queue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-queue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SettingsJson": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-settingsjson",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StatusUpdateInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-statusupdateinterval",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html#cfn-mediaconvert-jobtemplate-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConvert::Preset": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html",
      "Properties": {
        "Category": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html#cfn-mediaconvert-preset-category",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html#cfn-mediaconvert-preset-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html#cfn-mediaconvert-preset-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SettingsJson": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html#cfn-mediaconvert-preset-settingsjson",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html#cfn-mediaconvert-preset-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaConvert::Queue": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html#cfn-mediaconvert-queue-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html#cfn-mediaconvert-queue-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PricingPlan": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html#cfn-mediaconvert-queue-pricingplan",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html#cfn-mediaconvert-queue-status",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html#cfn-mediaconvert-queue-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaLive::Channel": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Inputs": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html",
      "Properties": {
        "CdiInputSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-cdiinputspecification",
          "Required": false,
          "Type": "CdiInputSpecification",
          "UpdateType": "Mutable"
        },
        "ChannelClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-channelclass",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Destinations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-destinations",
          "ItemType": "OutputDestination",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EncoderSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-encodersettings",
          "Required": false,
          "Type": "EncoderSettings",
          "UpdateType": "Mutable"
        },
        "InputAttachments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-inputattachments",
          "ItemType": "InputAttachment",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InputSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-inputspecification",
          "Required": false,
          "Type": "InputSpecification",
          "UpdateType": "Mutable"
        },
        "LogLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-loglevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Vpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-vpc",
          "Required": false,
          "Type": "VpcOutputSettings",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MediaLive::Input": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Destinations": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "Sources": {
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html",
      "Properties": {
        "Destinations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-destinations",
          "ItemType": "InputDestinationRequest",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InputDevices": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-inputdevices",
          "ItemType": "InputDeviceSettings",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InputSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-inputsecuritygroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MediaConnectFlows": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-mediaconnectflows",
          "ItemType": "MediaConnectFlowRequest",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Sources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-sources",
          "ItemType": "InputSourceRequest",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Vpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-vpc",
          "Required": false,
          "Type": "InputVpcRequest",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MediaLive::InputSecurityGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html",
      "Properties": {
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html#cfn-medialive-inputsecuritygroup-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "WhitelistRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html#cfn-medialive-inputsecuritygroup-whitelistrules",
          "ItemType": "InputWhitelistRuleCidr",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::Asset": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CreatedAt": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html",
      "Properties": {
        "EgressEndpoints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-egressendpoints",
          "ItemType": "EgressEndpoint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PackagingGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-packaginggroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-sourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SourceRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-sourcerolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::Channel": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::Channel.Id"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MediaPackage::OriginEndpoint": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Url": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html",
      "Properties": {
        "Authorization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-authorization",
          "Required": false,
          "Type": "Authorization",
          "UpdateType": "Mutable"
        },
        "ChannelId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-channelid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "CmafPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-cmafpackage",
          "Required": false,
          "Type": "CmafPackage",
          "UpdateType": "Mutable"
        },
        "DashPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-dashpackage",
          "Required": false,
          "Type": "DashPackage",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HlsPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-hlspackage",
          "Required": false,
          "Type": "HlsPackage",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.Id"
          }
        },
        "ManifestName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-manifestname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MssPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-msspackage",
          "Required": false,
          "Type": "MssPackage",
          "UpdateType": "Mutable"
        },
        "Origination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-origination",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::OriginEndpoint.Origination"
          }
        },
        "StartoverWindowSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-startoverwindowseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TimeDelaySeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-timedelayseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Whitelist": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-whitelist",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingConfiguration": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html",
      "Properties": {
        "CmafPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html#cfn-mediapackage-packagingconfiguration-cmafpackage",
          "Required": false,
          "Type": "CmafPackage",
          "UpdateType": "Mutable"
        },
        "DashPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html#cfn-mediapackage-packagingconfiguration-dashpackage",
          "Required": false,
          "Type": "DashPackage",
          "UpdateType": "Mutable"
        },
        "HlsPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html#cfn-mediapackage-packagingconfiguration-hlspackage",
          "Required": false,
          "Type": "HlsPackage",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html#cfn-mediapackage-packagingconfiguration-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MssPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html#cfn-mediapackage-packagingconfiguration-msspackage",
          "Required": false,
          "Type": "MssPackage",
          "UpdateType": "Mutable"
        },
        "PackagingGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html#cfn-mediapackage-packagingconfiguration-packaginggroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html#cfn-mediapackage-packagingconfiguration-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::MediaPackage::PackagingGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "DomainName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html",
      "Properties": {
        "Authorization": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html#cfn-mediapackage-packaginggroup-authorization",
          "Required": false,
          "Type": "Authorization",
          "UpdateType": "Mutable"
        },
        "Id": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html#cfn-mediapackage-packaginggroup-id",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::MediaPackage::PackagingGroup.Id"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html#cfn-mediapackage-packaginggroup-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::MediaStore::Container": {
      "Attributes": {
        "Endpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html",
      "Properties": {
        "AccessLoggingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-accessloggingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ContainerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-containername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CorsPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-corspolicy",
          "ItemType": "CorsRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LifecyclePolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-lifecyclepolicy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MetricPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-metricpolicy",
          "Required": false,
          "Type": "MetricPolicy",
          "UpdateType": "Mutable"
        },
        "Policy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-policy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Neptune::DBCluster": {
      "Attributes": {
        "ClusterResourceId": {
          "PrimitiveType": "String"
        },
        "Endpoint": {
          "PrimitiveType": "String"
        },
        "Port": {
          "PrimitiveType": "String"
        },
        "ReadEndpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html",
      "Properties": {
        "AssociatedRoles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-associatedroles",
          "ItemType": "DBClusterRole",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-availabilityzones",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "BackupRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-backupretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-dbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBClusterParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-dbclusterparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DeletionProtection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-deletionprotection",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableCloudwatchLogsExports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-enablecloudwatchlogsexports",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "IamAuthEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-iamauthenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredBackupWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-preferredbackupwindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestoreToTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-restoretotime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RestoreType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-restoretype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SnapshotIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-snapshotidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceDBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-sourcedbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StorageEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-storageencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UseLatestRestorableTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-uselatestrestorabletime",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-vpcsecuritygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Neptune::DBClusterParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Family": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-family",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-parameters",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Neptune::DBInstance": {
      "Attributes": {
        "Endpoint": {
          "PrimitiveType": "String"
        },
        "Port": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html",
      "Properties": {
        "AllowMajorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-allowmajorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AutoMinorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-autominorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBInstanceClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbinstanceclass",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "NeptuneInstanceClass"
          }
        },
        "DBInstanceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbinstanceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DBSnapshotIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbsnapshotidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Neptune::DBParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Family": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-family",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-parameters",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Neptune::DBSubnetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html",
      "Properties": {
        "DBSubnetGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-dbsubnetgroupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-subnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::CustomerGatewayAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html",
      "Properties": {
        "CustomerGatewayArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html#cfn-networkmanager-customergatewayassociation-customergatewayarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DeviceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html#cfn-networkmanager-customergatewayassociation-deviceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "GlobalNetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html#cfn-networkmanager-customergatewayassociation-globalnetworkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "LinkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html#cfn-networkmanager-customergatewayassociation-linkid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::NetworkManager::Device": {
      "Attributes": {
        "DeviceArn": {
          "PrimitiveType": "String"
        },
        "DeviceId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalNetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-globalnetworkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-location",
          "Required": false,
          "Type": "Location",
          "UpdateType": "Mutable"
        },
        "Model": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-model",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SerialNumber": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-serialnumber",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SiteId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-siteid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Vendor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html#cfn-networkmanager-device-vendor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::GlobalNetwork": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-globalnetwork.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-globalnetwork.html#cfn-networkmanager-globalnetwork-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-globalnetwork.html#cfn-networkmanager-globalnetwork-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::Link": {
      "Attributes": {
        "LinkArn": {
          "PrimitiveType": "String"
        },
        "LinkId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html",
      "Properties": {
        "Bandwidth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-bandwidth",
          "Required": true,
          "Type": "Bandwidth",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalNetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-globalnetworkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Provider": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-provider",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SiteId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-siteid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-type",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::LinkAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html",
      "Properties": {
        "DeviceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html#cfn-networkmanager-linkassociation-deviceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "GlobalNetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html#cfn-networkmanager-linkassociation-globalnetworkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "LinkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html#cfn-networkmanager-linkassociation-linkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::NetworkManager::Site": {
      "Attributes": {
        "SiteArn": {
          "PrimitiveType": "String"
        },
        "SiteId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html#cfn-networkmanager-site-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalNetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html#cfn-networkmanager-site-globalnetworkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html#cfn-networkmanager-site-location",
          "Required": false,
          "Type": "Location",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html#cfn-networkmanager-site-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::NetworkManager::TransitGatewayRegistration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayregistration.html",
      "Properties": {
        "GlobalNetworkId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayregistration.html#cfn-networkmanager-transitgatewayregistration-globalnetworkid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TransitGatewayArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayregistration.html#cfn-networkmanager-transitgatewayregistration-transitgatewayarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::OpsWorks::App": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html",
      "Properties": {
        "AppSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-appsource",
          "Required": false,
          "Type": "Source",
          "UpdateType": "Mutable"
        },
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-attributes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "DataSources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-datasources",
          "DuplicatesAllowed": false,
          "ItemType": "DataSource",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Domains": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-domains",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EnableSsl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-enablessl",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Environment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-environment",
          "DuplicatesAllowed": true,
          "ItemType": "EnvironmentVariable",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Shortname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-shortname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SslConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-sslconfiguration",
          "Required": false,
          "Type": "SslConfiguration",
          "UpdateType": "Mutable"
        },
        "StackId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-stackid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::ElasticLoadBalancerAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html",
      "Properties": {
        "ElasticLoadBalancerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-elbname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LayerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-layerid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Instance": {
      "Attributes": {
        "AvailabilityZone": {
          "PrimitiveType": "String"
        },
        "PrivateDnsName": {
          "PrimitiveType": "String"
        },
        "PrivateIp": {
          "PrimitiveType": "String"
        },
        "PublicDnsName": {
          "PrimitiveType": "String"
        },
        "PublicIp": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html",
      "Properties": {
        "AgentVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-agentversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AmiId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-amiid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Architecture": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-architecture",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AutoScalingType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-autoscalingtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "BlockDeviceMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-blockdevicemappings",
          "DuplicatesAllowed": false,
          "ItemType": "BlockDeviceMapping",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EbsOptimized": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-ebsoptimized",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ElasticIps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-elasticips",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Hostname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-hostname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstallUpdatesOnBoot": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-installupdatesonboot",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "LayerIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-layerids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Os": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-os",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RootDeviceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-rootdevicetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SshKeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-sshkeyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StackId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-stackid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tenancy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-tenancy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "TimeBasedAutoScaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-timebasedautoscaling",
          "Required": false,
          "Type": "TimeBasedAutoScaling",
          "UpdateType": "Immutable"
        },
        "VirtualizationType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-virtualizationtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Volumes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-volumes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Layer": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-attributes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "AutoAssignElasticIps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-autoassignelasticips",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "AutoAssignPublicIps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-autoassignpublicips",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "CustomInstanceProfileArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-custominstanceprofilearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomJson": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customjson",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomRecipes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customrecipes",
          "Required": false,
          "Type": "Recipes",
          "UpdateType": "Mutable"
        },
        "CustomSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customsecuritygroupids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EnableAutoHealing": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-enableautohealing",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "InstallUpdatesOnBoot": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-installupdatesonboot",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LifecycleEventConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-lifecycleeventconfiguration",
          "Required": false,
          "Type": "LifecycleEventConfiguration",
          "UpdateType": "Mutable"
        },
        "LoadBasedAutoScaling": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-loadbasedautoscaling",
          "Required": false,
          "Type": "LoadBasedAutoScaling",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Packages": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-packages",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Shortname": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-shortname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "StackId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-stackid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "UseEbsOptimizedInstances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-useebsoptimizedinstances",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VolumeConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-volumeconfigurations",
          "DuplicatesAllowed": true,
          "ItemType": "VolumeConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Stack": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html",
      "Properties": {
        "AgentVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-agentversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-attributes",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "ChefConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-chefconfiguration",
          "Required": false,
          "Type": "ChefConfiguration",
          "UpdateType": "Mutable"
        },
        "CloneAppIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-cloneappids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ClonePermissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-clonepermissions",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ConfigurationManager": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-configmanager",
          "Required": false,
          "Type": "StackConfigurationManager",
          "UpdateType": "Mutable"
        },
        "CustomCookbooksSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-custcookbooksource",
          "Required": false,
          "Type": "Source",
          "UpdateType": "Mutable"
        },
        "CustomJson": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-custjson",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultAvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultaz",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultInstanceProfileArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultinstanceprof",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DefaultOs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultos",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultRootDeviceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultrootdevicetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultSshKeyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultsshkeyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultSubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#defaultsubnet",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EcsClusterArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-ecsclusterarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ElasticIps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-elasticips",
          "DuplicatesAllowed": false,
          "ItemType": "ElasticIp",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "HostnameTheme": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-hostnametheme",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RdsDbInstances": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-rdsdbinstances",
          "DuplicatesAllowed": false,
          "ItemType": "RdsDbInstance",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ServiceRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-servicerolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SourceStackId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-sourcestackid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UseCustomCookbooks": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#usecustcookbooks",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "UseOpsworksSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-useopsworkssecuritygroups",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::EC2::VPC.Id"
          }
        }
      }
    },
    "AWS::OpsWorks::UserProfile": {
      "Attributes": {
        "SshUsername": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html",
      "Properties": {
        "AllowSelfManagement": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-allowselfmanagement",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IamUserArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-iamuserarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::IAM::User.Arn"
          }
        },
        "SshPublicKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-sshpublickey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SshUsername": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-sshusername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::OpsWorks::Volume": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html",
      "Properties": {
        "Ec2VolumeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-ec2volumeid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MountPoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-mountpoint",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StackId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-stackid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::OpsWorksCM::Server": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Endpoint": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html",
      "Properties": {
        "AssociatePublicIpAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-associatepublicipaddress",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BackupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-backupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.BackupId"
          }
        },
        "BackupRetentionCount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-backupretentioncount",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CustomCertificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-customcertificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.CustomCertificate"
          }
        },
        "CustomDomain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-customdomain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.CustomDomain"
          }
        },
        "CustomPrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-customprivatekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DisableAutomatedBackup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-disableautomatedbackup",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-engine",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EngineAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-engineattributes",
          "DuplicatesAllowed": true,
          "ItemType": "EngineAttribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EngineModel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-enginemodel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceProfileArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-instanceprofilearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.InstanceProfileArn"
          }
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "KeyPair": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-keypair",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.KeyPair"
          }
        },
        "PreferredBackupWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-preferredbackupwindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.PreferredBackupWindow"
          }
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.PreferredMaintenanceWindow"
          }
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-securitygroupids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "ServerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-servername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.ServerName"
          }
        },
        "ServiceRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-servicerolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::OpsWorksCM::Server.ServiceRoleArn"
          }
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-subnetids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::ADMChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ClientId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-clientid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ClientSecret": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-clientsecret",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::APNSChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "BundleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-bundleid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-certificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultAuthenticationMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-defaultauthenticationmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-privatekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TeamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-teamid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-tokenkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-tokenkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::APNSSandboxChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "BundleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-bundleid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-certificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultAuthenticationMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-defaultauthenticationmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-privatekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TeamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-teamid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-tokenkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-tokenkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::APNSVoipChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "BundleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-bundleid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-certificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultAuthenticationMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-defaultauthenticationmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-privatekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TeamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-teamid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-tokenkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-tokenkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::APNSVoipSandboxChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "BundleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-bundleid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-certificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DefaultAuthenticationMethod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-defaultauthenticationmethod",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PrivateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-privatekey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TeamId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-teamid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-tokenkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TokenKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-tokenkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::App": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html#cfn-pinpoint-app-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html#cfn-pinpoint-app-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::ApplicationSettings": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CampaignHook": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-campaignhook",
          "Required": false,
          "Type": "CampaignHook",
          "UpdateType": "Mutable"
        },
        "CloudWatchMetricsEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-cloudwatchmetricsenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Limits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-limits",
          "Required": false,
          "Type": "Limits",
          "UpdateType": "Mutable"
        },
        "QuietTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-quiettime",
          "Required": false,
          "Type": "QuietTime",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::BaiduChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html",
      "Properties": {
        "ApiKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-apikey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecretKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-secretkey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Campaign": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CampaignId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html",
      "Properties": {
        "AdditionalTreatments": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-additionaltreatments",
          "ItemType": "WriteTreatmentResource",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CampaignHook": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-campaignhook",
          "Required": false,
          "Type": "CampaignHook",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HoldoutPercent": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-holdoutpercent",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IsPaused": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-ispaused",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Limits": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-limits",
          "Required": false,
          "Type": "Limits",
          "UpdateType": "Mutable"
        },
        "MessageConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-messageconfiguration",
          "Required": true,
          "Type": "MessageConfiguration",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-schedule",
          "Required": true,
          "Type": "Schedule",
          "UpdateType": "Mutable"
        },
        "SegmentId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-segmentid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SegmentVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-segmentversion",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TreatmentDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-treatmentdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TreatmentName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-treatmentname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::EmailChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ConfigurationSet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-configurationset",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FromAddress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-fromaddress",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Identity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-identity",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::EventStream": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DestinationStreamArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-destinationstreamarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::GCMChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html",
      "Properties": {
        "ApiKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-apikey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::SMSChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SenderId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-senderid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ShortCode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-shortcode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::Segment": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "SegmentId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Dimensions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-dimensions",
          "Required": false,
          "Type": "SegmentDimensions",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SegmentGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-segmentgroups",
          "Required": false,
          "Type": "SegmentGroups",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Pinpoint::VoiceChannel": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html",
      "Properties": {
        "ApplicationId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html#cfn-pinpoint-voicechannel-applicationid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html#cfn-pinpoint-voicechannel-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html",
      "Properties": {
        "DeliveryOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-deliveryoptions",
          "Required": false,
          "Type": "DeliveryOptions",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ReputationOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-reputationoptions",
          "Required": false,
          "Type": "ReputationOptions",
          "UpdateType": "Mutable"
        },
        "SendingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-sendingoptions",
          "Required": false,
          "Type": "SendingOptions",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-tags",
          "ItemType": "Tags",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TrackingOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-trackingoptions",
          "Required": false,
          "Type": "TrackingOptions",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::ConfigurationSetEventDestination": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html",
      "Properties": {
        "ConfigurationSetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-configurationsetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "EventDestination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination",
          "Required": false,
          "Type": "EventDestination",
          "UpdateType": "Mutable"
        },
        "EventDestinationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestinationname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::PinpointEmail::DedicatedIpPool": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html",
      "Properties": {
        "PoolName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html#cfn-pinpointemail-dedicatedippool-poolname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html#cfn-pinpointemail-dedicatedippool-tags",
          "ItemType": "Tags",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::PinpointEmail::Identity": {
      "Attributes": {
        "IdentityDNSRecordName1": {
          "PrimitiveType": "String"
        },
        "IdentityDNSRecordName2": {
          "PrimitiveType": "String"
        },
        "IdentityDNSRecordName3": {
          "PrimitiveType": "String"
        },
        "IdentityDNSRecordValue1": {
          "PrimitiveType": "String"
        },
        "IdentityDNSRecordValue2": {
          "PrimitiveType": "String"
        },
        "IdentityDNSRecordValue3": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html",
      "Properties": {
        "DkimSigningEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-dkimsigningenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FeedbackForwardingEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-feedbackforwardingenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MailFromAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-mailfromattributes",
          "Required": false,
          "Type": "MailFromAttributes",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-tags",
          "ItemType": "Tags",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QLDB::Ledger": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html",
      "Properties": {
        "DeletionProtection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-deletionprotection",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PermissionsMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-permissionsmode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QLDB::Stream": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html",
      "Properties": {
        "ExclusiveEndTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-exclusiveendtime",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InclusiveStartTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-inclusivestarttime",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "KinesisConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-kinesisconfiguration",
          "Required": true,
          "Type": "KinesisConfiguration",
          "UpdateType": "Immutable"
        },
        "LedgerName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-ledgername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QLDB::Stream.RoleArn"
          }
        },
        "StreamName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-streamname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Analysis": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CreatedTime": {
          "PrimitiveType": "String"
        },
        "DataSetArns": {
          "PrimitiveItemType": "String",
          "Type": "List"
        },
        "LastUpdatedTime": {
          "PrimitiveType": "String"
        },
        "Sheets": {
          "ItemType": "Sheet",
          "Type": "List"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html",
      "Properties": {
        "AnalysisId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-analysisid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.AnalysisId"
          }
        },
        "AwsAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-awsaccountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.AwsAccountId"
          }
        },
        "Errors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-errors",
          "ItemType": "AnalysisError",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Analysis.Name"
          }
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-parameters",
          "Required": false,
          "Type": "Parameters",
          "UpdateType": "Mutable"
        },
        "Permissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-permissions",
          "ItemType": "ResourcePermission",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceEntity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-sourceentity",
          "Required": false,
          "Type": "AnalysisSourceEntity",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ThemeArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html#cfn-quicksight-analysis-themearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::QuickSight::Dashboard": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CreatedTime": {
          "PrimitiveType": "String"
        },
        "LastPublishedTime": {
          "PrimitiveType": "String"
        },
        "LastUpdatedTime": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html",
      "Properties": {
        "AwsAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-awsaccountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.AwsAccountId"
          }
        },
        "DashboardId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-dashboardid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.DashboardId"
          }
        },
        "DashboardPublishOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-dashboardpublishoptions",
          "Required": false,
          "Type": "DashboardPublishOptions",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.Name"
          }
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-parameters",
          "Required": false,
          "Type": "Parameters",
          "UpdateType": "Mutable"
        },
        "Permissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-permissions",
          "ItemType": "ResourcePermission",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceEntity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-sourceentity",
          "Required": false,
          "Type": "DashboardSourceEntity",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ThemeArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-themearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VersionDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html#cfn-quicksight-dashboard-versiondescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Dashboard.VersionDescription"
          }
        }
      }
    },
    "AWS::QuickSight::Template": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CreatedTime": {
          "PrimitiveType": "String"
        },
        "LastUpdatedTime": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html",
      "Properties": {
        "AwsAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-awsaccountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Template.AwsAccountId"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Template.Name"
          }
        },
        "Permissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-permissions",
          "ItemType": "ResourcePermission",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceEntity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-sourceentity",
          "Required": false,
          "Type": "TemplateSourceEntity",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TemplateId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-templateid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Template.TemplateId"
          }
        },
        "VersionDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-versiondescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Template.VersionDescription"
          }
        }
      }
    },
    "AWS::QuickSight::Theme": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CreatedTime": {
          "PrimitiveType": "String"
        },
        "LastUpdatedTime": {
          "PrimitiveType": "String"
        },
        "Type": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html",
      "Properties": {
        "AwsAccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-awsaccountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.AwsAccountId"
          }
        },
        "BaseThemeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-basethemeid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.BaseThemeId"
          }
        },
        "Configuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-configuration",
          "Required": false,
          "Type": "ThemeConfiguration",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.Name"
          }
        },
        "Permissions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-permissions",
          "ItemType": "ResourcePermission",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ThemeId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-themeid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.ThemeId"
          }
        },
        "VersionDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html#cfn-quicksight-theme-versiondescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::QuickSight::Theme.VersionDescription"
          }
        }
      }
    },
    "AWS::RAM::ResourceShare": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html",
      "Properties": {
        "AllowExternalPrincipals": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-allowexternalprincipals",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Principals": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-principals",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ResourceArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-resourcearns",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBCluster": {
      "Attributes": {
        "Endpoint.Address": {
          "PrimitiveType": "String"
        },
        "Endpoint.Port": {
          "PrimitiveType": "String"
        },
        "ReadEndpoint.Address": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html",
      "Properties": {
        "AssociatedRoles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-associatedroles",
          "DuplicatesAllowed": false,
          "ItemType": "DBClusterRole",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AvailabilityZones": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-availabilityzones",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ListValueType": "AvailabilityZones",
            "ValueType": "AvailabilityZone"
          }
        },
        "BacktrackWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-backtrackwindow",
          "PrimitiveType": "Long",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "BackupRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-backuprententionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::RDS::DBCluster.BackupRetentionPeriod"
          }
        },
        "DBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBClusterParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbclusterparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DatabaseName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-databasename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DeletionProtection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-deletionprotection",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableCloudwatchLogsExports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-enablecloudwatchlogsexports",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EnableHttpEndpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-enablehttpendpoint",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableIAMDatabaseAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-enableiamdatabaseauthentication",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-engine",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Conditional"
        },
        "EngineMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-enginemode",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-globalclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MasterUserPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-masteruserpassword",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterUsername": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-masterusername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredBackupWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-preferredbackupwindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ReplicationSourceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-replicationsourceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RestoreType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-restoretype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ScalingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-scalingconfiguration",
          "Required": false,
          "Type": "ScalingConfiguration",
          "UpdateType": "Mutable"
        },
        "SnapshotIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-snapshotidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceDBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-sourcedbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-sourceregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StorageEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-storageencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UseLatestRestorableTime": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-uselatestrestorabletime",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-vpcsecuritygroupids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBClusterParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Family": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-family",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-parameters",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBInstance": {
      "Attributes": {
        "Endpoint.Address": {
          "PrimitiveType": "String"
        },
        "Endpoint.Port": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html",
      "Properties": {
        "AllocatedStorage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-allocatedstorage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AllowMajorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-allowmajorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AssociatedRoles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-associatedroles",
          "DuplicatesAllowed": false,
          "ItemType": "DBInstanceRole",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AutoMinorVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-autominorversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AvailabilityZone"
          }
        },
        "BackupRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-backupretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Conditional",
          "Value": {
            "ValueType": "AWS::RDS::DBInstance.BackupRetentionPeriod"
          }
        },
        "CACertificateIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-cacertificateidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "CharacterSetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-charactersetname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "CopyTagsToSnapshot": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-copytagstosnapshot",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBInstanceClass": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbinstanceclass",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::RDS::DBInstance.DBInstanceClass"
          }
        },
        "DBInstanceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbinstanceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "DBSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsecuritygroups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DBSnapshotIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsnapshotidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "DeleteAutomatedBackups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-deleteautomatedbackups",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DeletionProtection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-deletionprotection",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Domain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-domain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DomainIAMRoleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-domainiamrolename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnableCloudwatchLogsExports": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-enablecloudwatchlogsexports",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EnableIAMDatabaseAuthentication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-enableiamdatabaseauthentication",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EnablePerformanceInsights": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-enableperformanceinsights",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-engine",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional",
          "Value": {
            "ValueType": "AWS::RDS::DBInstance.Engine"
          }
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "Iops": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-iops",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LicenseModel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-licensemodel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterUserPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-masteruserpassword",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MasterUsername": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-masterusername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MaxAllocatedStorage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-maxallocatedstorage",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MonitoringInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-monitoringinterval",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Conditional",
          "Value": {
            "ValueType": "RdsInstanceMonitoringInterval"
          }
        },
        "MonitoringRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-monitoringrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MultiAZ": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-multiaz",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "OptionGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-optiongroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PerformanceInsightsKMSKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-performanceinsightskmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "PerformanceInsightsRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-performanceinsightsretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "PerformanceInsightsRetentionPeriod"
          }
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-port",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PreferredBackupWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-preferredbackupwindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "ProcessorFeatures": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-processorfeatures",
          "DuplicatesAllowed": false,
          "ItemType": "ProcessorFeature",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PromotionTier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-promotiontier",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::RDS::DBInstance.PromotionTier"
          }
        },
        "PubliclyAccessible": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-publiclyaccessible",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceDBInstanceIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-sourcedbinstanceidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SourceRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-sourceregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StorageEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-storageencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StorageType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-storagetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Timezone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-timezone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "UseDefaultProcessorFeatures": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-usedefaultprocessorfeatures",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VPCSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-vpcsecuritygroups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Family": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-family",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-parameters",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBProxy": {
      "Attributes": {
        "DBProxyArn": {
          "PrimitiveType": "String"
        },
        "Endpoint": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html",
      "Properties": {
        "Auth": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-auth",
          "ItemType": "AuthFormat",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DBProxyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-dbproxyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxy.DBProxyName"
          }
        },
        "DebugLogging": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-debuglogging",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EngineFamily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-enginefamily",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxy.EngineFamily"
          }
        },
        "IdleClientTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-idleclienttimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RequireTLS": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-requiretls",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-tags",
          "ItemType": "TagFormat",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-vpcsecuritygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcSubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html#cfn-rds-dbproxy-vpcsubnetids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::RDS::DBProxyTargetGroup": {
      "Attributes": {
        "TargetGroupArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html",
      "Properties": {
        "ConnectionPoolConfigurationInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfo",
          "Required": false,
          "Type": "ConnectionPoolConfigurationInfoFormat",
          "UpdateType": "Mutable"
        },
        "DBClusterIdentifiers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-dbclusteridentifiers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DBInstanceIdentifiers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-dbinstanceidentifiers",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DBProxyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-dbproxyname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxyTargetGroup.DBProxyName"
          }
        },
        "TargetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-targetgroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::RDS::DBProxyTargetGroup.TargetGroupName"
          }
        }
      }
    },
    "AWS::RDS::DBSecurityGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html",
      "Properties": {
        "DBSecurityGroupIngress": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-dbsecuritygroupingress",
          "DuplicatesAllowed": false,
          "ItemType": "Ingress",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "EC2VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-ec2vpcid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-groupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBSecurityGroupIngress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html",
      "Properties": {
        "CIDRIP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-cidrip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "DBSecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-dbsecuritygroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "EC2SecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EC2SecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EC2SecurityGroupOwnerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupownerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::DBSubnetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html",
      "Properties": {
        "DBSubnetGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-dbsubnetgroupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "DBSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-dbsubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-subnetids",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RDS::EventSubscription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html",
      "Properties": {
        "Enabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-enabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "EventCategories": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-eventcategories",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SnsTopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-snstopicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SourceIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-sourceids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-sourcetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        }
      }
    },
    "AWS::RDS::GlobalCluster": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html",
      "Properties": {
        "DeletionProtection": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html#cfn-rds-globalcluster-deletionprotection",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Engine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html#cfn-rds-globalcluster-engine",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::RDS::GlobalCluster.Engine"
          }
        },
        "EngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html#cfn-rds-globalcluster-engineversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GlobalClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html#cfn-rds-globalcluster-globalclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::RDS::GlobalCluster.GlobalClusterIdentifier"
          }
        },
        "SourceDBClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html#cfn-rds-globalcluster-sourcedbclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "StorageEncrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html#cfn-rds-globalcluster-storageencrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::RDS::OptionGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html",
      "Properties": {
        "EngineName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-enginename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "MajorEngineVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-majorengineversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "OptionConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-optionconfigurations",
          "DuplicatesAllowed": true,
          "ItemType": "OptionConfiguration",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "OptionGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-optiongroupdescription",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Redshift::Cluster": {
      "Attributes": {
        "Endpoint.Address": {
          "PrimitiveType": "String"
        },
        "Endpoint.Port": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html",
      "Properties": {
        "AllowVersionUpgrade": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-allowversionupgrade",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AutomatedSnapshotRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-automatedsnapshotretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AvailabilityZone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-availabilityzone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClusterParameterGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterparametergroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ClusterSecurityGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersecuritygroups",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ClusterSubnetGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersubnetgroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ClusterType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustertype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RedshiftClusterType"
          }
        },
        "ClusterVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RedshiftClusterVersion"
          }
        },
        "DBName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-dbname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ElasticIp": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-elasticip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Encrypted": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-encrypted",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HsmClientCertificateIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-hsmclientcertidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HsmConfigurationIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-HsmConfigurationIdentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IamRoles": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-iamroles",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LoggingProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-loggingproperties",
          "Required": false,
          "Type": "LoggingProperties",
          "UpdateType": "Mutable"
        },
        "MasterUserPassword": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masteruserpassword",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "MasterUsername": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masterusername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "NodeType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-nodetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RedshiftInstanceType"
          }
        },
        "NumberOfNodes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-nodetype",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Redshift::Cluster.NumberOfNodes"
          }
        },
        "OwnerAccount": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-owneraccount",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Port": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-port",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PreferredMaintenanceWindow": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-preferredmaintenancewindow",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PubliclyAccessible": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-publiclyaccessible",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SnapshotClusterIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotclusteridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SnapshotIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcSecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-vpcsecuritygroupids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Redshift::ClusterParameterGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ParameterGroupFamily": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parametergroupfamily",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parameters",
          "DuplicatesAllowed": true,
          "ItemType": "Parameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Redshift::ClusterSecurityGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Redshift::ClusterSecurityGroupIngress": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html",
      "Properties": {
        "CIDRIP": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-cidrip",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "CidrIp"
          }
        },
        "ClusterSecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-clustersecuritygroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "EC2SecurityGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EC2SecurityGroupOwnerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupownerid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Redshift::ClusterSubnetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-subnetids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ResourceGroups::Group": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html#cfn-resourcegroups-group-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html#cfn-resourcegroups-group-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ResourceQuery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html#cfn-resourcegroups-group-resourcequery",
          "Required": false,
          "Type": "ResourceQuery",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html#cfn-resourcegroups-group-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::Fleet": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html#cfn-robomaker-fleet-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html#cfn-robomaker-fleet-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::Robot": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html",
      "Properties": {
        "Architecture": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-architecture",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Fleet": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-fleet",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GreengrassGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-greengrassgroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::RobotApplication": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CurrentRevisionId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html",
      "Properties": {
        "CurrentRevisionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-currentrevisionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RobotSoftwareSuite": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-robotsoftwaresuite",
          "Required": true,
          "Type": "RobotSoftwareSuite",
          "UpdateType": "Immutable"
        },
        "Sources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-sources",
          "ItemType": "SourceConfig",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::RobotApplicationVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html",
      "Properties": {
        "Application": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html#cfn-robomaker-robotapplicationversion-application",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CurrentRevisionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html#cfn-robomaker-robotapplicationversion-currentrevisionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::RoboMaker::SimulationApplication": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CurrentRevisionId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html",
      "Properties": {
        "CurrentRevisionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-currentrevisionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RenderingEngine": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-renderingengine",
          "Required": true,
          "Type": "RenderingEngine",
          "UpdateType": "Immutable"
        },
        "RobotSoftwareSuite": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-robotsoftwaresuite",
          "Required": true,
          "Type": "RobotSoftwareSuite",
          "UpdateType": "Immutable"
        },
        "SimulationSoftwareSuite": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite",
          "Required": true,
          "Type": "SimulationSoftwareSuite",
          "UpdateType": "Immutable"
        },
        "Sources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-sources",
          "ItemType": "SourceConfig",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::RoboMaker::SimulationApplicationVersion": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html",
      "Properties": {
        "Application": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html#cfn-robomaker-simulationapplicationversion-application",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "CurrentRevisionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html#cfn-robomaker-simulationapplicationversion-currentrevisionid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Route53::DNSSEC": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-dnssec.html",
      "Properties": {
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-dnssec.html#cfn-route53-dnssec-hostedzoneid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53::DNSSEC.HostedZoneId"
          }
        }
      }
    },
    "AWS::Route53::HealthCheck": {
      "Attributes": {
        "HealthCheckId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html",
      "Properties": {
        "HealthCheckConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthcheckconfig",
          "Required": true,
          "Type": "HealthCheckConfig",
          "UpdateType": "Mutable"
        },
        "HealthCheckTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthchecktags",
          "DuplicatesAllowed": false,
          "ItemType": "HealthCheckTag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::HostedZone": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        },
        "NameServers": {
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Type": "List"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html",
      "Properties": {
        "HostedZoneConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzoneconfig",
          "Required": false,
          "Type": "HostedZoneConfig",
          "UpdateType": "Mutable"
        },
        "HostedZoneTags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzonetags",
          "DuplicatesAllowed": false,
          "ItemType": "HostedZoneTag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "QueryLoggingConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-queryloggingconfig",
          "Required": false,
          "Type": "QueryLoggingConfig",
          "UpdateType": "Mutable"
        },
        "VPCs": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-vpcs",
          "DuplicatesAllowed": false,
          "ItemType": "VPC",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::KeySigningKey": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html",
      "Properties": {
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html#cfn-route53-keysigningkey-hostedzoneid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53::KeySigningKey.HostedZoneId"
          }
        },
        "KeyManagementServiceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html#cfn-route53-keysigningkey-keymanagementservicearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53::KeySigningKey.KeyManagementServiceArn"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html#cfn-route53-keysigningkey-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53::KeySigningKey.Name"
          }
        },
        "Status": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html#cfn-route53-keysigningkey-status",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Route53::KeySigningKey.Status"
          }
        }
      }
    },
    "AWS::Route53::RecordSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html",
      "Properties": {
        "AliasTarget": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget",
          "Required": false,
          "Type": "AliasTarget",
          "UpdateType": "Mutable"
        },
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Failover": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-failover",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RecordSetFailover"
          }
        },
        "GeoLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation",
          "Required": false,
          "Type": "GeoLocation",
          "UpdateType": "Mutable"
        },
        "HealthCheckId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-healthcheckid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzoneid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HostedZoneName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzonename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "MultiValueAnswer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-multivalueanswer",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceRecords": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-resourcerecords",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SetIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-setidentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TTL": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-ttl",
          "PrimitiveType": "Long",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "RecordSetType"
          }
        },
        "Weight": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-weight",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53::RecordSetGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html",
      "Properties": {
        "Comment": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-comment",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HostedZoneId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-hostedzoneid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "HostedZoneName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-hostedzonename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RecordSets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-recordsets",
          "DuplicatesAllowed": false,
          "ItemType": "RecordSet",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53Resolver::ResolverDNSSECConfig": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        },
        "OwnerId": {
          "PrimitiveType": "String"
        },
        "ValidationStatus": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverdnssecconfig.html",
      "Properties": {
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverdnssecconfig.html#cfn-route53resolver-resolverdnssecconfig-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53Resolver::ResolverDNSSECConfig.ResourceId"
          }
        }
      }
    },
    "AWS::Route53Resolver::ResolverEndpoint": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Direction": {
          "PrimitiveType": "String"
        },
        "HostVPCId": {
          "PrimitiveType": "String"
        },
        "IpAddressCount": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        },
        "ResolverEndpointId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html",
      "Properties": {
        "Direction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-direction",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "IpAddresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-ipaddresses",
          "ItemType": "IpAddressRequest",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53Resolver::ResolverQueryLoggingConfig": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "AssociationCount": {
          "PrimitiveType": "Integer"
        },
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "CreatorRequestId": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "OwnerId": {
          "PrimitiveType": "String"
        },
        "ShareStatus": {
          "PrimitiveType": "String"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html",
      "Properties": {
        "DestinationArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html#cfn-route53resolver-resolverqueryloggingconfig-destinationarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53Resolver::ResolverQueryLoggingConfig.DestinationArn"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html#cfn-route53resolver-resolverqueryloggingconfig-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53Resolver::ResolverQueryLoggingConfig.Name"
          }
        }
      }
    },
    "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "Error": {
          "PrimitiveType": "String"
        },
        "ErrorMessage": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html",
      "Properties": {
        "ResolverQueryLogConfigId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html#cfn-route53resolver-resolverqueryloggingconfigassociation-resolverquerylogconfigid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation.ResolverQueryLogConfigId"
          }
        },
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html#cfn-route53resolver-resolverqueryloggingconfigassociation-resourceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation.ResourceId"
          }
        }
      }
    },
    "AWS::Route53Resolver::ResolverRule": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "DomainName": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        },
        "ResolverEndpointId": {
          "PrimitiveType": "String"
        },
        "ResolverRuleId": {
          "PrimitiveType": "String"
        },
        "TargetIps": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html",
      "Properties": {
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResolverEndpointId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-resolverendpointid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RuleType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-ruletype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TargetIps": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-targetips",
          "ItemType": "TargetAddress",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Route53Resolver::ResolverRuleAssociation": {
      "Attributes": {
        "Name": {
          "PrimitiveType": "String"
        },
        "ResolverRuleAssociationId": {
          "PrimitiveType": "String"
        },
        "ResolverRuleId": {
          "PrimitiveType": "String"
        },
        "VPCId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html#cfn-route53resolver-resolverruleassociation-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ResolverRuleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html#cfn-route53resolver-resolverruleassociation-resolverruleid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "VPCId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html#cfn-route53resolver-resolverruleassociation-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::S3::AccessPoint": {
      "Attributes": {
        "NetworkOrigin": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3::AccessPoint.Bucket"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::S3::AccessPoint.Name"
          }
        },
        "Policy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-policy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PublicAccessBlockConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-publicaccessblockconfiguration",
          "Required": false,
          "Type": "PublicAccessBlockConfiguration",
          "UpdateType": "Immutable"
        },
        "VpcConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-vpcconfiguration",
          "Required": false,
          "Type": "VpcConfiguration",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::S3::Bucket": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "DomainName": {
          "PrimitiveType": "String"
        },
        "DualStackDomainName": {
          "PrimitiveType": "String"
        },
        "RegionalDomainName": {
          "PrimitiveType": "String"
        },
        "WebsiteURL": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html",
      "Properties": {
        "AccelerateConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accelerateconfiguration",
          "Required": false,
          "Type": "AccelerateConfiguration",
          "UpdateType": "Mutable"
        },
        "AccessControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accesscontrol",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "S3BucketAccessControl"
          }
        },
        "AnalyticsConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-analyticsconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "AnalyticsConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "BucketEncryption": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-bucketencryption",
          "Required": false,
          "Type": "BucketEncryption",
          "UpdateType": "Mutable"
        },
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3::Bucket.BucketName"
          }
        },
        "CorsConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-crossoriginconfig",
          "Required": false,
          "Type": "CorsConfiguration",
          "UpdateType": "Mutable"
        },
        "IntelligentTieringConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-intelligenttieringconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "IntelligentTieringConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InventoryConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-inventoryconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "InventoryConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "LifecycleConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-lifecycleconfig",
          "Required": false,
          "Type": "LifecycleConfiguration",
          "UpdateType": "Mutable"
        },
        "LoggingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-loggingconfig",
          "Required": false,
          "Type": "LoggingConfiguration",
          "UpdateType": "Mutable"
        },
        "MetricsConfigurations": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-metricsconfigurations",
          "DuplicatesAllowed": false,
          "ItemType": "MetricsConfiguration",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "NotificationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-notification",
          "Required": false,
          "Type": "NotificationConfiguration",
          "UpdateType": "Mutable"
        },
        "ObjectLockConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockconfiguration",
          "Required": false,
          "Type": "ObjectLockConfiguration",
          "UpdateType": "Mutable"
        },
        "ObjectLockEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OwnershipControls": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-ownershipcontrols",
          "Required": false,
          "Type": "OwnershipControls",
          "UpdateType": "Mutable"
        },
        "PublicAccessBlockConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-publicaccessblockconfiguration",
          "Required": false,
          "Type": "PublicAccessBlockConfiguration",
          "UpdateType": "Mutable"
        },
        "ReplicationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-replicationconfiguration",
          "Required": false,
          "Type": "ReplicationConfiguration",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VersioningConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-versioning",
          "Required": false,
          "Type": "VersioningConfiguration",
          "UpdateType": "Mutable"
        },
        "WebsiteConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-websiteconfiguration",
          "Required": false,
          "Type": "WebsiteConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::BucketPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3::StorageLens": {
      "Attributes": {
        "StorageLensArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html",
      "Properties": {
        "StorageLensConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html#cfn-s3-storagelens-storagelensconfiguration",
          "Required": true,
          "Type": "StorageLensConfiguration",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html#cfn-s3-storagelens-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3Outposts::AccessPoint": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html#cfn-s3outposts-accesspoint-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::AccessPoint.Bucket"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html#cfn-s3outposts-accesspoint-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::AccessPoint.Name"
          }
        },
        "Policy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html#cfn-s3outposts-accesspoint-policy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "VpcConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html#cfn-s3outposts-accesspoint-vpcconfiguration",
          "Required": true,
          "Type": "VpcConfiguration",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::S3Outposts::Bucket": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html#cfn-s3outposts-bucket-bucketname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Bucket.BucketName"
          }
        },
        "LifecycleConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html#cfn-s3outposts-bucket-lifecycleconfiguration",
          "Required": false,
          "Type": "LifecycleConfiguration",
          "UpdateType": "Mutable"
        },
        "OutpostId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html#cfn-s3outposts-bucket-outpostid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Bucket.OutpostId"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html#cfn-s3outposts-bucket-tags",
          "DuplicatesAllowed": false,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3Outposts::BucketPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucketpolicy.html",
      "Properties": {
        "Bucket": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucketpolicy.html#cfn-s3outposts-bucketpolicy-bucket",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::BucketPolicy.Bucket"
          }
        },
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucketpolicy.html#cfn-s3outposts-bucketpolicy-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::S3Outposts::Endpoint": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "CidrBlock": {
          "PrimitiveType": "String"
        },
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "NetworkInterfaces": {
          "DuplicatesAllowed": false,
          "ItemType": "NetworkInterface",
          "Type": "List"
        },
        "Status": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html",
      "Properties": {
        "OutpostId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html#cfn-s3outposts-endpoint-outpostid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Endpoint.OutpostId"
          }
        },
        "SecurityGroupId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html#cfn-s3outposts-endpoint-securitygroupid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Endpoint.SecurityGroupId"
          }
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html#cfn-s3outposts-endpoint-subnetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::S3Outposts::Endpoint.SubnetId"
          }
        }
      }
    },
    "AWS::SES::ConfigurationSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SES::ConfigurationSet.Name"
          }
        }
      }
    },
    "AWS::SNS::Subscription": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html",
      "Properties": {
        "DeliveryPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-deliverypolicy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Endpoint": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-endpoint",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "FilterPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocol": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-protocol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "SnsSubscriptionProtocol"
          }
        },
        "RawMessageDelivery": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-rawmessagedelivery",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RedrivePolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-redrivepolicy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Region": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-region",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SubscriptionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-subscriptionrolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TopicArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#topicarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SNS::Topic": {
      "Attributes": {
        "TopicName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html",
      "Properties": {
        "ContentBasedDeduplication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-contentbaseddeduplication",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-displayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "FifoTopic": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-fifotopic",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KmsMasterKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-kmsmasterkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Subscription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-subscription",
          "DuplicatesAllowed": true,
          "ItemType": "Subscription",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TopicName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-topicname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SNS::TopicPolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html",
      "Properties": {
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-policydocument",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Topics": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-topics",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SQS::Queue": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "QueueName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html",
      "Properties": {
        "ContentBasedDeduplication": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-contentbaseddeduplication",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DelaySeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-delayseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SQS::Queue.DelaySeconds"
          }
        },
        "FifoQueue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-fifoqueue",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "KmsDataKeyReusePeriodSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-kmsdatakeyreuseperiodseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SQS::Queue.KmsDataKeyReusePeriodSeconds"
          }
        },
        "KmsMasterKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-kmsmasterkeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaximumMessageSize": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-maxmesgsize",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SQS::Queue.MaximumMessageSize"
          }
        },
        "MessageRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-msgretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SQS::Queue.MessageRetentionPeriod"
          }
        },
        "QueueName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReceiveMessageWaitTimeSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-receivemsgwaittime",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SQS::Queue.ReceiveMessageWaitTimeSeconds"
          }
        },
        "RedrivePolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-redrive",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#cfn-sqs-queue-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VisibilityTimeout": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-visiblitytimeout",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SQS::Queue.VisibilityTimeout"
          }
        }
      }
    },
    "AWS::SQS::QueuePolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html",
      "Properties": {
        "PolicyDocument": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-policydoc",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Queues": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-queues",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::Association": {
      "Attributes": {
        "AssociationId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html",
      "Properties": {
        "ApplyOnlyAtCronInterval": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-applyonlyatcroninterval",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AssociationName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-associationname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.AssociationName"
          }
        },
        "AutomationTargetParameterName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-automationtargetparametername",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.AutomationTargetParameterName"
          }
        },
        "ComplianceSeverity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-complianceseverity",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.ComplianceSeverity"
          }
        },
        "DocumentVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-documentversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.DocumentVersion"
          }
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.InstanceId"
          }
        },
        "MaxConcurrency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-maxconcurrency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.MaxConcurrency"
          }
        },
        "MaxErrors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-maxerrors",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.MaxErrors"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.Name"
          }
        },
        "OutputLocation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-outputlocation",
          "Required": false,
          "Type": "InstanceAssociationOutputLocation",
          "UpdateType": "Mutable"
        },
        "Parameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-parameters",
          "ItemType": "ParameterValues",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "ScheduleExpression": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-scheduleexpression",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.ScheduleExpression"
          }
        },
        "SyncCompliance": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-synccompliance",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.SyncCompliance"
          }
        },
        "Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-targets",
          "ItemType": "Target",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "WaitForSuccessTimeoutSeconds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-waitforsuccesstimeoutseconds",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::Association.WaitForSuccessTimeoutSeconds"
          }
        }
      }
    },
    "AWS::SSM::Document": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html",
      "Properties": {
        "Content": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-content",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "DocumentType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-documenttype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindow": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html",
      "Properties": {
        "AllowUnassociatedTargets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-allowunassociatedtargets",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Cutoff": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-cutoff",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::MaintenanceWindow.Cutoff"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Duration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-duration",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSM::MaintenanceWindow.Duration"
          }
        },
        "EndDate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-enddate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-schedule",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ScheduleOffset": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-scheduleoffset",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ScheduleTimezone": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-scheduletimezone",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "StartDate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-startdate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTarget": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "OwnerInformation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-ownerinformation",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-resourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-targets",
          "ItemType": "Targets",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "WindowId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-windowid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SSM::MaintenanceWindowTask": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LoggingInfo": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-logginginfo",
          "Required": false,
          "Type": "LoggingInfo",
          "UpdateType": "Mutable"
        },
        "MaxConcurrency": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-maxconcurrency",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "MaxErrors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-maxerrors",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Priority": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-priority",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ServiceRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-servicerolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Targets": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-targets",
          "ItemType": "Target",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TaskArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-taskarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TaskInvocationParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters",
          "Required": false,
          "Type": "TaskInvocationParameters",
          "UpdateType": "Mutable"
        },
        "TaskParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-taskparameters",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "TaskType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-tasktype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "WindowId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-windowid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SSM::Parameter": {
      "Attributes": {
        "Type": {
          "PrimitiveType": "String"
        },
        "Value": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html",
      "Properties": {
        "AllowedPattern": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-allowedpattern",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DataType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-datatype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Policies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-policies",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-tier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Type": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-type",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::PatchBaseline": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html",
      "Properties": {
        "ApprovalRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvalrules",
          "Required": false,
          "Type": "RuleGroup",
          "UpdateType": "Mutable"
        },
        "ApprovedPatches": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvedpatches",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ApprovedPatchesComplianceLevel": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvedpatchescompliancelevel",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ApprovedPatchesEnableNonSecurity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvedpatchesenablenonsecurity",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GlobalFilters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-globalfilters",
          "Required": false,
          "Type": "PatchFilterGroup",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "OperatingSystem": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-operatingsystem",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PatchGroups": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-patchgroups",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RejectedPatches": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-rejectedpatches",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "RejectedPatchesAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-rejectedpatchesaction",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Sources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-sources",
          "ItemType": "PatchSource",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SSM::ResourceDataSync": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html",
      "Properties": {
        "BucketName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-bucketname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.BucketName"
          }
        },
        "BucketPrefix": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-bucketprefix",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "BucketRegion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-bucketregion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.BucketRegion"
          }
        },
        "KMSKeyArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-kmskeyarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "S3Destination": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-s3destination",
          "Required": false,
          "Type": "S3Destination",
          "UpdateType": "Immutable"
        },
        "SyncFormat": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-syncformat",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "SyncName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-syncname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.SyncName"
          }
        },
        "SyncSource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-syncsource",
          "Required": false,
          "Type": "SyncSource",
          "UpdateType": "Mutable"
        },
        "SyncType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-synctype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSM::ResourceDataSync.SyncType"
          }
        }
      }
    },
    "AWS::SSO::Assignment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html",
      "Properties": {
        "InstanceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-instancearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::Assignment.InstanceArn"
          }
        },
        "PermissionSetArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-permissionsetarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::Assignment.PermissionSetArn"
          }
        },
        "PrincipalId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-principalid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::Assignment.PrincipalId"
          }
        },
        "PrincipalType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-principaltype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::Assignment.PrincipalType"
          }
        },
        "TargetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-targetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::Assignment.TargetId"
          }
        },
        "TargetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-targettype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::Assignment.TargetType"
          }
        }
      }
    },
    "AWS::SSO::InstanceAccessControlAttributeConfiguration": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instanceaccesscontrolattributeconfiguration.html",
      "Properties": {
        "AccessControlAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instanceaccesscontrolattributeconfiguration.html#cfn-sso-instanceaccesscontrolattributeconfiguration-accesscontrolattributes",
          "ItemType": "AccessControlAttribute",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "InstanceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instanceaccesscontrolattributeconfiguration.html#cfn-sso-instanceaccesscontrolattributeconfiguration-instancearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::InstanceAccessControlAttributeConfiguration.InstanceArn"
          }
        }
      }
    },
    "AWS::SSO::PermissionSet": {
      "Attributes": {
        "PermissionSetArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InlinePolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-inlinepolicy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "InstanceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-instancearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::PermissionSet.InstanceArn"
          }
        },
        "ManagedPolicies": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-managedpolicies",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSO::PermissionSet.ManagedPolicies"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SSO::PermissionSet.Name"
          }
        },
        "RelayStateType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-relaystatetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSO::PermissionSet.RelayStateType"
          }
        },
        "SessionDuration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-sessionduration",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SSO::PermissionSet.SessionDuration"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html#cfn-sso-permissionset-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::App": {
      "Attributes": {
        "AppArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html",
      "Properties": {
        "AppName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html#cfn-sagemaker-app-appname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::App.AppName"
          }
        },
        "AppType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html#cfn-sagemaker-app-apptype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::App.AppType"
          }
        },
        "DomainId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html#cfn-sagemaker-app-domainid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::App.DomainId"
          }
        },
        "ResourceSpec": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html#cfn-sagemaker-app-resourcespec",
          "Required": false,
          "Type": "ResourceSpec",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html#cfn-sagemaker-app-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "UserProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html#cfn-sagemaker-app-userprofilename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::App.UserProfileName"
          }
        }
      }
    },
    "AWS::SageMaker::AppImageConfig": {
      "Attributes": {
        "AppImageConfigArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html",
      "Properties": {
        "AppImageConfigName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html#cfn-sagemaker-appimageconfig-appimageconfigname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::AppImageConfig.AppImageConfigName"
          }
        },
        "KernelGatewayImageConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html#cfn-sagemaker-appimageconfig-kernelgatewayimageconfig",
          "Required": false,
          "Type": "KernelGatewayImageConfig",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html#cfn-sagemaker-appimageconfig-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::CodeRepository": {
      "Attributes": {
        "CodeRepositoryName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html",
      "Properties": {
        "CodeRepositoryName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html#cfn-sagemaker-coderepository-coderepositoryname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "GitConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html#cfn-sagemaker-coderepository-gitconfig",
          "Required": true,
          "Type": "GitConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::DataQualityJobDefinition": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "JobDefinitionArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html",
      "Properties": {
        "DataQualityAppSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification",
          "Required": true,
          "Type": "DataQualityAppSpecification",
          "UpdateType": "Immutable"
        },
        "DataQualityBaselineConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig",
          "Required": false,
          "Type": "DataQualityBaselineConfig",
          "UpdateType": "Immutable"
        },
        "DataQualityJobInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput",
          "Required": true,
          "Type": "DataQualityJobInput",
          "UpdateType": "Immutable"
        },
        "DataQualityJobOutputConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-dataqualityjoboutputconfig",
          "Required": true,
          "Type": "MonitoringOutputConfig",
          "UpdateType": "Immutable"
        },
        "JobDefinitionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-jobdefinitionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.JobDefinitionName"
          }
        },
        "JobResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-jobresources",
          "Required": true,
          "Type": "MonitoringResources",
          "UpdateType": "Immutable"
        },
        "NetworkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-networkconfig",
          "Required": false,
          "Type": "NetworkConfig",
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DataQualityJobDefinition.RoleArn"
          }
        },
        "StoppingCondition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-stoppingcondition",
          "Required": false,
          "Type": "StoppingCondition",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html#cfn-sagemaker-dataqualityjobdefinition-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::Device": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html",
      "Properties": {
        "Device": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html#cfn-sagemaker-device-device",
          "PrimitiveType": "Json",
          "Required": false,
          "Type": "Device",
          "UpdateType": "Mutable"
        },
        "DeviceFleetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html#cfn-sagemaker-device-devicefleetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Device.DeviceFleetName"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html#cfn-sagemaker-device-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::DeviceFleet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html#cfn-sagemaker-devicefleet-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DeviceFleet.Description"
          }
        },
        "DeviceFleetName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html#cfn-sagemaker-devicefleet-devicefleetname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DeviceFleet.DeviceFleetName"
          }
        },
        "OutputConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html#cfn-sagemaker-devicefleet-outputconfig",
          "Required": true,
          "Type": "EdgeOutputConfig",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html#cfn-sagemaker-devicefleet-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::DeviceFleet.RoleArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html#cfn-sagemaker-devicefleet-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::Domain": {
      "Attributes": {
        "DomainArn": {
          "PrimitiveType": "String"
        },
        "DomainId": {
          "PrimitiveType": "String"
        },
        "HomeEfsFileSystemId": {
          "PrimitiveType": "String"
        },
        "SingleSignOnManagedApplicationInstanceId": {
          "PrimitiveType": "String"
        },
        "Url": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html",
      "Properties": {
        "AppNetworkAccessType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-appnetworkaccesstype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.AppNetworkAccessType"
          }
        },
        "AuthMode": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-authmode",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.AuthMode"
          }
        },
        "DefaultUserSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-defaultusersettings",
          "Required": true,
          "Type": "UserSettings",
          "UpdateType": "Mutable"
        },
        "DomainName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-domainname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.DomainName"
          }
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.KmsKeyId"
          }
        },
        "SubnetIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-subnetids",
          "DuplicatesAllowed": true,
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.SubnetIds"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "VpcId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-vpcid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Domain.VpcId"
          }
        }
      }
    },
    "AWS::SageMaker::FeatureGroup": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EventTimeFeatureName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-eventtimefeaturename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::FeatureGroup.EventTimeFeatureName"
          }
        },
        "FeatureDefinitions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-featuredefinitions",
          "DuplicatesAllowed": true,
          "ItemType": "FeatureDefinition",
          "Required": true,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "FeatureGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-featuregroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::FeatureGroup.FeatureGroupName"
          }
        },
        "OfflineStoreConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-offlinestoreconfig",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "OnlineStoreConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-onlinestoreconfig",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RecordIdentifierFeatureName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-recordidentifierfeaturename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::FeatureGroup.RecordIdentifierFeatureName"
          }
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::FeatureGroup.RoleArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html#cfn-sagemaker-featuregroup-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::Image": {
      "Attributes": {
        "ImageArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html",
      "Properties": {
        "ImageDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html#cfn-sagemaker-image-imagedescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Image.ImageDescription"
          }
        },
        "ImageDisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html#cfn-sagemaker-image-imagedisplayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Image.ImageDisplayName"
          }
        },
        "ImageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html#cfn-sagemaker-image-imagename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Image.ImageName"
          }
        },
        "ImageRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html#cfn-sagemaker-image-imagerolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Image.ImageRoleArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html#cfn-sagemaker-image-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::ImageVersion": {
      "Attributes": {
        "ContainerImage": {
          "PrimitiveType": "String"
        },
        "ImageArn": {
          "PrimitiveType": "String"
        },
        "ImageVersionArn": {
          "PrimitiveType": "String"
        },
        "Version": {
          "PrimitiveType": "Integer"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-imageversion.html",
      "Properties": {
        "BaseImage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-imageversion.html#cfn-sagemaker-imageversion-baseimage",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ImageVersion.BaseImage"
          }
        },
        "ImageName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-imageversion.html#cfn-sagemaker-imageversion-imagename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ImageVersion.ImageName"
          }
        }
      }
    },
    "AWS::SageMaker::Model": {
      "Attributes": {
        "ModelName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html",
      "Properties": {
        "Containers": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-containers",
          "ItemType": "ContainerDefinition",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "EnableNetworkIsolation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-enablenetworkisolation",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-executionrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "InferenceExecutionConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-inferenceexecutionconfig",
          "Required": false,
          "Type": "InferenceExecutionConfig",
          "UpdateType": "Immutable"
        },
        "ModelName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-modelname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PrimaryContainer": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-primarycontainer",
          "Required": false,
          "Type": "ContainerDefinition",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VpcConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-vpcconfig",
          "Required": false,
          "Type": "VpcConfig",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelBiasJobDefinition": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "JobDefinitionArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html",
      "Properties": {
        "JobDefinitionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-jobdefinitionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.JobDefinitionName"
          }
        },
        "JobResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-jobresources",
          "Required": true,
          "Type": "MonitoringResources",
          "UpdateType": "Immutable"
        },
        "ModelBiasAppSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasappspecification",
          "Required": true,
          "Type": "ModelBiasAppSpecification",
          "UpdateType": "Immutable"
        },
        "ModelBiasBaselineConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasbaselineconfig",
          "Required": false,
          "Type": "ModelBiasBaselineConfig",
          "UpdateType": "Immutable"
        },
        "ModelBiasJobInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasjobinput",
          "Required": true,
          "Type": "ModelBiasJobInput",
          "UpdateType": "Immutable"
        },
        "ModelBiasJobOutputConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-modelbiasjoboutputconfig",
          "Required": true,
          "Type": "MonitoringOutputConfig",
          "UpdateType": "Immutable"
        },
        "NetworkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-networkconfig",
          "Required": false,
          "Type": "NetworkConfig",
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelBiasJobDefinition.RoleArn"
          }
        },
        "StoppingCondition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-stoppingcondition",
          "Required": false,
          "Type": "StoppingCondition",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html#cfn-sagemaker-modelbiasjobdefinition-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "JobDefinitionArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html",
      "Properties": {
        "JobDefinitionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-jobdefinitionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.JobDefinitionName"
          }
        },
        "JobResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-jobresources",
          "Required": true,
          "Type": "MonitoringResources",
          "UpdateType": "Immutable"
        },
        "ModelExplainabilityAppSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityappspecification",
          "Required": true,
          "Type": "ModelExplainabilityAppSpecification",
          "UpdateType": "Immutable"
        },
        "ModelExplainabilityBaselineConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilitybaselineconfig",
          "Required": false,
          "Type": "ModelExplainabilityBaselineConfig",
          "UpdateType": "Immutable"
        },
        "ModelExplainabilityJobInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityjobinput",
          "Required": true,
          "Type": "ModelExplainabilityJobInput",
          "UpdateType": "Immutable"
        },
        "ModelExplainabilityJobOutputConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-modelexplainabilityjoboutputconfig",
          "Required": true,
          "Type": "MonitoringOutputConfig",
          "UpdateType": "Immutable"
        },
        "NetworkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-networkconfig",
          "Required": false,
          "Type": "NetworkConfig",
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelExplainabilityJobDefinition.RoleArn"
          }
        },
        "StoppingCondition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-stoppingcondition",
          "Required": false,
          "Type": "StoppingCondition",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html#cfn-sagemaker-modelexplainabilityjobdefinition-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::ModelPackageGroup": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "ModelPackageGroupArn": {
          "PrimitiveType": "String"
        },
        "ModelPackageGroupStatus": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html",
      "Properties": {
        "ModelPackageGroupDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html#cfn-sagemaker-modelpackagegroup-modelpackagegroupdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ModelPackageGroupName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html#cfn-sagemaker-modelpackagegroup-modelpackagegroupname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelPackageGroup.ModelPackageGroupName"
          }
        },
        "ModelPackageGroupPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html#cfn-sagemaker-modelpackagegroup-modelpackagegrouppolicy",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html#cfn-sagemaker-modelpackagegroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::ModelQualityJobDefinition": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "JobDefinitionArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html",
      "Properties": {
        "JobDefinitionName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-jobdefinitionname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.JobDefinitionName"
          }
        },
        "JobResources": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-jobresources",
          "Required": true,
          "Type": "MonitoringResources",
          "UpdateType": "Immutable"
        },
        "ModelQualityAppSpecification": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityappspecification",
          "Required": true,
          "Type": "ModelQualityAppSpecification",
          "UpdateType": "Immutable"
        },
        "ModelQualityBaselineConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-modelqualitybaselineconfig",
          "Required": false,
          "Type": "ModelQualityBaselineConfig",
          "UpdateType": "Immutable"
        },
        "ModelQualityJobInput": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityjobinput",
          "Required": true,
          "Type": "ModelQualityJobInput",
          "UpdateType": "Immutable"
        },
        "ModelQualityJobOutputConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-modelqualityjoboutputconfig",
          "Required": true,
          "Type": "MonitoringOutputConfig",
          "UpdateType": "Immutable"
        },
        "NetworkConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-networkconfig",
          "Required": false,
          "Type": "NetworkConfig",
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::ModelQualityJobDefinition.RoleArn"
          }
        },
        "StoppingCondition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-stoppingcondition",
          "Required": false,
          "Type": "StoppingCondition",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html#cfn-sagemaker-modelqualityjobdefinition-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::MonitoringSchedule": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "LastModifiedTime": {
          "PrimitiveType": "String"
        },
        "MonitoringScheduleArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html",
      "Properties": {
        "EndpointName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-endpointname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.EndpointName"
          }
        },
        "FailureReason": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-failurereason",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.FailureReason"
          }
        },
        "LastMonitoringExecutionSummary": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-lastmonitoringexecutionsummary",
          "Required": false,
          "Type": "MonitoringExecutionSummary",
          "UpdateType": "Mutable"
        },
        "MonitoringScheduleConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig",
          "Required": true,
          "Type": "MonitoringScheduleConfig",
          "UpdateType": "Mutable"
        },
        "MonitoringScheduleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-monitoringschedulename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleName"
          }
        },
        "MonitoringScheduleStatus": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-monitoringschedulestatus",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleStatus"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::NotebookInstance": {
      "Attributes": {
        "NotebookInstanceName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html",
      "Properties": {
        "AcceleratorTypes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-acceleratortypes",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AdditionalCodeRepositories": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-additionalcoderepositories",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DefaultCodeRepository": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-defaultcoderepository",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DirectInternetAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-directinternetaccess",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "InstanceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-instancetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LifecycleConfigName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-lifecycleconfigname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotebookInstanceName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-notebookinstancename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "RootAccess": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-rootaccess",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SecurityGroupIds": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-securitygroupids",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "SubnetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-subnetid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VolumeSizeInGB": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-volumesizeingb",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::NotebookInstance.VolumeSizeInGB"
          }
        }
      }
    },
    "AWS::SageMaker::Pipeline": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html",
      "Properties": {
        "PipelineDefinition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html#cfn-sagemaker-pipeline-pipelinedefinition",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PipelineDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html#cfn-sagemaker-pipeline-pipelinedescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PipelineDisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html#cfn-sagemaker-pipeline-pipelinedisplayname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Pipeline.PipelineDisplayName"
          }
        },
        "PipelineName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html#cfn-sagemaker-pipeline-pipelinename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Pipeline.PipelineName"
          }
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html#cfn-sagemaker-pipeline-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Pipeline.RoleArn"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html#cfn-sagemaker-pipeline-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SageMaker::Project": {
      "Attributes": {
        "CreationTime": {
          "PrimitiveType": "String"
        },
        "ProjectArn": {
          "PrimitiveType": "String"
        },
        "ProjectId": {
          "PrimitiveType": "String"
        },
        "ProjectStatus": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html",
      "Properties": {
        "ProjectDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html#cfn-sagemaker-project-projectdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Project.ProjectDescription"
          }
        },
        "ProjectName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html#cfn-sagemaker-project-projectname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::Project.ProjectName"
          }
        },
        "ServiceCatalogProvisioningDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html#cfn-sagemaker-project-servicecatalogprovisioningdetails",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html#cfn-sagemaker-project-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SageMaker::UserProfile": {
      "Attributes": {
        "UserProfileArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html",
      "Properties": {
        "DomainId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html#cfn-sagemaker-userprofile-domainid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.DomainId"
          }
        },
        "SingleSignOnUserIdentifier": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html#cfn-sagemaker-userprofile-singlesignonuseridentifier",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.SingleSignOnUserIdentifier"
          }
        },
        "SingleSignOnUserValue": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html#cfn-sagemaker-userprofile-singlesignonuservalue",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.SingleSignOnUserValue"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html#cfn-sagemaker-userprofile-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "UserProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html#cfn-sagemaker-userprofile-userprofilename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::SageMaker::UserProfile.UserProfileName"
          }
        },
        "UserSettings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html#cfn-sagemaker-userprofile-usersettings",
          "Required": false,
          "Type": "UserSettings",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SecretsManager::ResourcePolicy": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html",
      "Properties": {
        "BlockPublicPolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html#cfn-secretsmanager-resourcepolicy-blockpublicpolicy",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ResourcePolicy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html#cfn-secretsmanager-resourcepolicy-resourcepolicy",
          "PrimitiveType": "Json",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html#cfn-secretsmanager-resourcepolicy-secretid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SecretsManager::RotationSchedule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html",
      "Properties": {
        "HostedRotationLambda": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda",
          "Required": false,
          "Type": "HostedRotationLambda",
          "UpdateType": "Mutable"
        },
        "RotationLambdaARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-rotationlambdaarn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "RotationRules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-rotationrules",
          "Required": false,
          "Type": "RotationRules",
          "UpdateType": "Mutable"
        },
        "SecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-secretid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::SecretsManager::Secret": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "GenerateSecretString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-generatesecretstring",
          "Required": false,
          "Type": "GenerateSecretString",
          "UpdateType": "Mutable"
        },
        "KmsKeyId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-kmskeyid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ReplicaRegions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-replicaregions",
          "ItemType": "ReplicaRegion",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecretString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-secretstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::SecretsManager::SecretTargetAttachment": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html",
      "Properties": {
        "SecretId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-secretid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-targetid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "TargetType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-targettype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "SecretsManagerTargetType"
          }
        }
      }
    },
    "AWS::SecurityHub::Hub": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html",
      "Properties": {
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html#cfn-securityhub-hub-tags",
          "PrimitiveType": "Json",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::AcceptedPortfolioShare": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html#cfn-servicecatalog-acceptedportfolioshare-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html#cfn-servicecatalog-acceptedportfolioshare-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceCatalog::CloudFormationProduct": {
      "Attributes": {
        "ProductName": {
          "PrimitiveType": "String"
        },
        "ProvisioningArtifactIds": {
          "PrimitiveType": "String"
        },
        "ProvisioningArtifactNames": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Distributor": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-distributor",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Owner": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-owner",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ProvisioningArtifactParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactparameters",
          "ItemType": "ProvisioningArtifactProperties",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ReplaceProvisioningArtifacts": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-replaceprovisioningartifacts",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SupportDescription": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-supportdescription",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SupportEmail": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-supportemail",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "SupportUrl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-supporturl",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct": {
      "Attributes": {
        "CloudformationStackArn": {
          "PrimitiveType": "String"
        },
        "Outputs": {
          "PrimitiveItemType": "String",
          "Type": "Map"
        },
        "ProvisionedProductId": {
          "PrimitiveType": "String"
        },
        "RecordId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.AcceptLanguage"
          }
        },
        "NotificationArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-notificationarns",
          "DuplicatesAllowed": false,
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        },
        "PathId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-pathid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.PathId"
          }
        },
        "PathName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-pathname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.PathName"
          }
        },
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-productid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProductId"
          }
        },
        "ProductName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-productname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProductName"
          }
        },
        "ProvisionedProductName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisionedproductname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisionedProductName"
          }
        },
        "ProvisioningArtifactId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningartifactid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningArtifactId"
          }
        },
        "ProvisioningArtifactName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningartifactname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "ProvisioningParameters": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameters",
          "ItemType": "ProvisioningParameter",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "ProvisioningPreferences": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences",
          "Required": false,
          "Type": "ProvisioningPreferences",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::LaunchNotificationConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "NotificationArns": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-notificationarns",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-productid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceCatalog::LaunchRoleConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "LocalRoleName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-localrolename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-productid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-rolearn",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::LaunchTemplateConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-productid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-rules",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::Portfolio": {
      "Attributes": {
        "PortfolioName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DisplayName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-displayname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ProviderName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-providername",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::PortfolioPrincipalAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PrincipalARN": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-principalarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PrincipalType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-principaltype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceCatalog::PortfolioProductAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-productid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SourcePortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-sourceportfolioid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceCatalog::PortfolioShare": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "AccountId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-accountid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ShareTagOptions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-sharetagoptions",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::ResourceUpdateConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-productid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TagUpdateOnProvisionedProduct": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-tagupdateonprovisionedproduct",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::ServiceAction": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html#cfn-servicecatalog-serviceaction-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::ServiceAction.AcceptLanguage"
          }
        },
        "Definition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html#cfn-servicecatalog-serviceaction-definition",
          "ItemType": "DefinitionParameter",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "DefinitionType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html#cfn-servicecatalog-serviceaction-definitiontype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::ServiceAction.DefinitionType"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html#cfn-servicecatalog-serviceaction-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html#cfn-servicecatalog-serviceaction-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::ServiceAction.Name"
          }
        }
      }
    },
    "AWS::ServiceCatalog::ServiceActionAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html",
      "Properties": {
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html#cfn-servicecatalog-serviceactionassociation-productid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::ServiceActionAssociation.ProductId"
          }
        },
        "ProvisioningArtifactId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html#cfn-servicecatalog-serviceactionassociation-provisioningartifactid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::ServiceActionAssociation.ProvisioningArtifactId"
          }
        },
        "ServiceActionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html#cfn-servicecatalog-serviceactionassociation-serviceactionid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalog::ServiceActionAssociation.ServiceActionId"
          }
        }
      }
    },
    "AWS::ServiceCatalog::StackSetConstraint": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html",
      "Properties": {
        "AcceptLanguage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-acceptlanguage",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "AccountList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-accountlist",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "AdminRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-adminrole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-description",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ExecutionRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-executionrole",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "PortfolioId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-portfolioid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProductId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-productid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RegionList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-regionlist",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "StackInstanceControl": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-stackinstancecontrol",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalog::TagOption": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html",
      "Properties": {
        "Active": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-active",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Key": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-key",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Value": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-value",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceCatalog::TagOptionAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html",
      "Properties": {
        "ResourceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html#cfn-servicecatalog-tagoptionassociation-resourceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "TagOptionId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html#cfn-servicecatalog-tagoptionassociation-tagoptionid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceCatalogAppRegistry::Application": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html#cfn-servicecatalogappregistry-application-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html#cfn-servicecatalogappregistry-application-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalogAppRegistry::Application.Name"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html#cfn-servicecatalogappregistry-application-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalogAppRegistry::AttributeGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html",
      "Properties": {
        "Attributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html#cfn-servicecatalogappregistry-attributegroup-attributes",
          "Required": true,
          "Type": "Attributes",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html#cfn-servicecatalogappregistry-attributegroup-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html#cfn-servicecatalogappregistry-attributegroup-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalogAppRegistry::AttributeGroup.Name"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html#cfn-servicecatalogappregistry-attributegroup-tags",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation": {
      "Attributes": {
        "ApplicationArn": {
          "PrimitiveType": "String"
        },
        "AttributeGroupArn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroupassociation.html",
      "Properties": {
        "Application": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroupassociation.html#cfn-servicecatalogappregistry-attributegroupassociation-application",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.Application"
          }
        },
        "AttributeGroup": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroupassociation.html#cfn-servicecatalogappregistry-attributegroupassociation-attributegroup",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.AttributeGroup"
          }
        }
      }
    },
    "AWS::ServiceCatalogAppRegistry::ResourceAssociation": {
      "Attributes": {
        "ApplicationArn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "ResourceArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html",
      "Properties": {
        "Application": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html#cfn-servicecatalogappregistry-resourceassociation-application",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalogAppRegistry::ResourceAssociation.Application"
          }
        },
        "Resource": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html#cfn-servicecatalogappregistry-resourceassociation-resource",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalogAppRegistry::ResourceAssociation.Resource"
          }
        },
        "ResourceType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html#cfn-servicecatalogappregistry-resourceassociation-resourcetype",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::ServiceCatalogAppRegistry::ResourceAssociation.ResourceType"
          }
        }
      }
    },
    "AWS::ServiceDiscovery::HttpNamespace": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html#cfn-servicediscovery-httpnamespace-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html#cfn-servicediscovery-httpnamespace-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html#cfn-servicediscovery-httpnamespace-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceDiscovery::Instance": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html",
      "Properties": {
        "InstanceAttributes": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-instanceattributes",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "InstanceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-instanceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "ServiceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-serviceid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceDiscovery::PrivateDnsNamespace": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Vpc": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-vpc",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::ServiceDiscovery::PublicDnsNamespace": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html#cfn-servicediscovery-publicdnsnamespace-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html#cfn-servicediscovery-publicdnsnamespace-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html#cfn-servicediscovery-publicdnsnamespace-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::ServiceDiscovery::Service": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "DnsConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-dnsconfig",
          "Required": false,
          "Type": "DnsConfig",
          "UpdateType": "Mutable"
        },
        "HealthCheckConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-healthcheckconfig",
          "Required": false,
          "Type": "HealthCheckConfig",
          "UpdateType": "Mutable"
        },
        "HealthCheckCustomConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-healthcheckcustomconfig",
          "Required": false,
          "Type": "HealthCheckCustomConfig",
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "NamespaceId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-namespaceid",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Signer::ProfilePermission": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html",
      "Properties": {
        "Action": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html#cfn-signer-profilepermission-action",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Principal": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html#cfn-signer-profilepermission-principal",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProfileName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html#cfn-signer-profilepermission-profilename",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "ProfileVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html#cfn-signer-profilepermission-profileversion",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Signer::ProfilePermission.ProfileVersion"
          }
        },
        "StatementId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html#cfn-signer-profilepermission-statementid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::Signer::SigningProfile": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ProfileName": {
          "PrimitiveType": "String"
        },
        "ProfileVersion": {
          "PrimitiveType": "String"
        },
        "ProfileVersionArn": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html",
      "Properties": {
        "PlatformId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html#cfn-signer-signingprofile-platformid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Signer::SigningProfile.PlatformId"
          }
        },
        "SignatureValidityPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html#cfn-signer-signingprofile-signaturevalidityperiod",
          "Required": false,
          "Type": "SignatureValidityPeriod",
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html#cfn-signer-signingprofile-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::StepFunctions::Activity": {
      "Attributes": {
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html#cfn-stepfunctions-activity-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html#cfn-stepfunctions-activity-tags",
          "ItemType": "TagsEntry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::StepFunctions::StateMachine": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Name": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html",
      "Properties": {
        "Definition": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definition",
          "Required": false,
          "Type": "Definition",
          "UpdateType": "Mutable"
        },
        "DefinitionS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location",
          "Required": false,
          "Type": "S3Location",
          "UpdateType": "Mutable"
        },
        "DefinitionString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionstring",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.DefinitionString"
          }
        },
        "DefinitionSubstitutions": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionsubstitutions",
          "PrimitiveItemType": "String",
          "Required": false,
          "Type": "Map",
          "UpdateType": "Mutable"
        },
        "LoggingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-loggingconfiguration",
          "Required": false,
          "Type": "LoggingConfiguration",
          "UpdateType": "Mutable"
        },
        "RoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-rolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.RoleArn"
          }
        },
        "StateMachineName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinename",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.StateMachineName"
          }
        },
        "StateMachineType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinetype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::StepFunctions::StateMachine.StateMachineType"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags",
          "DuplicatesAllowed": true,
          "ItemType": "TagsEntry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "TracingConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tracingconfiguration",
          "Required": false,
          "Type": "TracingConfiguration",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Synthetics::Canary": {
      "Attributes": {
        "Id": {
          "PrimitiveType": "String"
        },
        "State": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html",
      "Properties": {
        "ArtifactS3Location": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-artifacts3location",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::Synthetics::Canary.ArtifactS3Location"
          }
        },
        "Code": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-code",
          "Required": true,
          "Type": "Code",
          "UpdateType": "Mutable"
        },
        "ExecutionRoleArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-executionrolearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "FailureRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-failureretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::Synthetics::Canary.Name"
          }
        },
        "RunConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-runconfig",
          "Required": false,
          "Type": "RunConfig",
          "UpdateType": "Mutable"
        },
        "RuntimeVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-runtimeversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Schedule": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-schedule",
          "Required": true,
          "Type": "Schedule",
          "UpdateType": "Mutable"
        },
        "StartCanaryAfterCreation": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-startcanaryaftercreation",
          "PrimitiveType": "Boolean",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "SuccessRetentionPeriod": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-successretentionperiod",
          "PrimitiveType": "Integer",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VPCConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-vpcconfig",
          "Required": false,
          "Type": "VPCConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Transfer::Server": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ServerId": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html",
      "Properties": {
        "Certificate": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-certificate",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Domain": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-domain",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "EndpointDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-endpointdetails",
          "Required": false,
          "Type": "EndpointDetails",
          "UpdateType": "Mutable"
        },
        "EndpointType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-endpointtype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "IdentityProviderDetails": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-identityproviderdetails",
          "Required": false,
          "Type": "IdentityProviderDetails",
          "UpdateType": "Mutable"
        },
        "IdentityProviderType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-identityprovidertype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Immutable"
        },
        "LoggingRole": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-loggingrole",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Protocols": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-protocols",
          "ItemType": "Protocol",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "SecurityPolicyName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-securitypolicyname",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::Transfer::User": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "ServerId": {
          "PrimitiveType": "String"
        },
        "UserName": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html",
      "Properties": {
        "HomeDirectory": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-homedirectory",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "HomeDirectoryMappings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-homedirectorymappings",
          "ItemType": "HomeDirectoryMapEntry",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "HomeDirectoryType": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-homedirectorytype",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "Policy": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-policy",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable"
        },
        "PosixProfile": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-posixprofile",
          "Required": false,
          "Type": "PosixProfile",
          "UpdateType": "Mutable"
        },
        "Role": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-role",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "ServerId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-serverid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SshPublicKeys": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-sshpublickeys",
          "ItemType": "SshPublicKey",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WAF::ByteMatchSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html",
      "Properties": {
        "ByteMatchTuples": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html#cfn-waf-bytematchset-bytematchtuples",
          "DuplicatesAllowed": false,
          "ItemType": "ByteMatchTuple",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html#cfn-waf-bytematchset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WAF::IPSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html",
      "Properties": {
        "IPSetDescriptors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html#cfn-waf-ipset-ipsetdescriptors",
          "DuplicatesAllowed": false,
          "ItemType": "IPSetDescriptor",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html#cfn-waf-ipset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WAF::Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html",
      "Properties": {
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Predicates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-predicates",
          "DuplicatesAllowed": false,
          "ItemType": "Predicate",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::SizeConstraintSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html#cfn-waf-sizeconstraintset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SizeConstraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html#cfn-waf-sizeconstraintset-sizeconstraints",
          "DuplicatesAllowed": false,
          "ItemType": "SizeConstraint",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::SqlInjectionMatchSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html#cfn-waf-sqlinjectionmatchset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SqlInjectionMatchTuples": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples",
          "DuplicatesAllowed": false,
          "ItemType": "SqlInjectionMatchTuple",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::WebACL": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html",
      "Properties": {
        "DefaultAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-defaultaction",
          "Required": true,
          "Type": "WafAction",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-rules",
          "DuplicatesAllowed": false,
          "ItemType": "ActivatedRule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAF::XssMatchSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html#cfn-waf-xssmatchset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "XssMatchTuples": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html#cfn-waf-xssmatchset-xssmatchtuples",
          "DuplicatesAllowed": false,
          "ItemType": "XssMatchTuple",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::ByteMatchSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html",
      "Properties": {
        "ByteMatchTuples": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html#cfn-wafregional-bytematchset-bytematchtuples",
          "ItemType": "ByteMatchTuple",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html#cfn-wafregional-bytematchset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WAFRegional::GeoMatchSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html",
      "Properties": {
        "GeoMatchConstraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html#cfn-wafregional-geomatchset-geomatchconstraints",
          "ItemType": "GeoMatchConstraint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html#cfn-wafregional-geomatchset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WAFRegional::IPSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html",
      "Properties": {
        "IPSetDescriptors": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html#cfn-wafregional-ipset-ipsetdescriptors",
          "ItemType": "IPSetDescriptor",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html#cfn-wafregional-ipset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WAFRegional::RateBasedRule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html",
      "Properties": {
        "MatchPredicates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-matchpredicates",
          "ItemType": "Predicate",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RateKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-ratekey",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RateLimit": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-ratelimit",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::RegexPatternSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html#cfn-wafregional-regexpatternset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "RegexPatternStrings": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html#cfn-wafregional-regexpatternset-regexpatternstrings",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::Rule": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html",
      "Properties": {
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Predicates": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-predicates",
          "ItemType": "Predicate",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::SizeConstraintSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html#cfn-wafregional-sizeconstraintset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SizeConstraints": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html#cfn-wafregional-sizeconstraintset-sizeconstraints",
          "ItemType": "SizeConstraint",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::SqlInjectionMatchSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html#cfn-wafregional-sqlinjectionmatchset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "SqlInjectionMatchTuples": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuples",
          "ItemType": "SqlInjectionMatchTuple",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::WebACL": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html",
      "Properties": {
        "DefaultAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-defaultaction",
          "Required": true,
          "Type": "Action",
          "UpdateType": "Mutable"
        },
        "MetricName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-metricname",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-rules",
          "ItemType": "Rule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFRegional::WebACLAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html",
      "Properties": {
        "ResourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "WebACLId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-webaclid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WAFRegional::XssMatchSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html#cfn-wafregional-xssmatchset-name",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "XssMatchTuples": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html#cfn-wafregional-xssmatchset-xssmatchtuples",
          "ItemType": "XssMatchTuple",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::IPSet": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html",
      "Properties": {
        "Addresses": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html#cfn-wafv2-ipset-addresses",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::IPSet.Addresses"
          }
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html#cfn-wafv2-ipset-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::IPSet.Description"
          }
        },
        "IPAddressVersion": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html#cfn-wafv2-ipset-ipaddressversion",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::IPSet.IPAddressVersion"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html#cfn-wafv2-ipset-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::IPSet.Name"
          }
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html#cfn-wafv2-ipset-scope",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::IPSet.Scope"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html#cfn-wafv2-ipset-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RegexPatternSet": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html",
      "Properties": {
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html#cfn-wafv2-regexpatternset-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RegexPatternSet.Description"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html#cfn-wafv2-regexpatternset-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RegexPatternSet.Name"
          }
        },
        "RegularExpressionList": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html#cfn-wafv2-regexpatternset-regularexpressionlist",
          "PrimitiveItemType": "String",
          "Required": true,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html#cfn-wafv2-regexpatternset-scope",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RegexPatternSet.Scope"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html#cfn-wafv2-regexpatternset-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::RuleGroup": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html",
      "Properties": {
        "Capacity": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html#cfn-wafv2-rulegroup-capacity",
          "PrimitiveType": "Integer",
          "Required": true,
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html#cfn-wafv2-rulegroup-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.Description"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html#cfn-wafv2-rulegroup-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.Name"
          }
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html#cfn-wafv2-rulegroup-rules",
          "ItemType": "Rule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html#cfn-wafv2-rulegroup-scope",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::RuleGroup.Scope"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html#cfn-wafv2-rulegroup-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VisibilityConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html#cfn-wafv2-rulegroup-visibilityconfig",
          "Required": true,
          "Type": "VisibilityConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACL": {
      "Attributes": {
        "Arn": {
          "PrimitiveType": "String"
        },
        "Capacity": {
          "PrimitiveType": "Integer"
        },
        "Id": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html",
      "Properties": {
        "DefaultAction": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-defaultaction",
          "Required": true,
          "Type": "DefaultAction",
          "UpdateType": "Mutable"
        },
        "Description": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-description",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.Description"
          }
        },
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-name",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.Name"
          }
        },
        "Rules": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-rules",
          "ItemType": "Rule",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "Scope": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-scope",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Mutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACL.Scope"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-tags",
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "VisibilityConfig": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-visibilityconfig",
          "Required": true,
          "Type": "VisibilityConfig",
          "UpdateType": "Mutable"
        }
      }
    },
    "AWS::WAFv2::WebACLAssociation": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html",
      "Properties": {
        "ResourceArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html#cfn-wafv2-webaclassociation-resourcearn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACLAssociation.ResourceArn"
          }
        },
        "WebACLArn": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html#cfn-wafv2-webaclassociation-webaclarn",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::WAFv2::WebACLAssociation.WebACLArn"
          }
        }
      }
    },
    "AWS::WorkSpaces::ConnectionAlias": {
      "Attributes": {
        "AliasId": {
          "PrimitiveType": "String"
        },
        "Associations": {
          "ItemType": "ConnectionAliasAssociation",
          "Type": "List"
        },
        "ConnectionAliasState": {
          "PrimitiveType": "String"
        }
      },
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html",
      "Properties": {
        "ConnectionString": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html#cfn-workspaces-connectionalias-connectionstring",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable",
          "Value": {
            "ValueType": "AWS::WorkSpaces::ConnectionAlias.ConnectionString"
          }
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html#cfn-workspaces-connectionalias-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Immutable"
        }
      }
    },
    "AWS::WorkSpaces::Workspace": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html",
      "Properties": {
        "BundleId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-bundleid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Conditional"
        },
        "DirectoryId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-directoryid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Conditional"
        },
        "RootVolumeEncryptionEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-rootvolumeencryptionenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "Tags": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-tags",
          "DuplicatesAllowed": true,
          "ItemType": "Tag",
          "Required": false,
          "Type": "List",
          "UpdateType": "Mutable"
        },
        "UserName": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-username",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        },
        "UserVolumeEncryptionEnabled": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-uservolumeencryptionenabled",
          "PrimitiveType": "Boolean",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "VolumeEncryptionKey": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-volumeencryptionkey",
          "PrimitiveType": "String",
          "Required": false,
          "UpdateType": "Conditional"
        },
        "WorkspaceProperties": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-workspaceproperties",
          "Required": false,
          "Type": "WorkspaceProperties",
          "UpdateType": "Mutable"
        }
      }
    },
    "Alexa::ASK::Skill": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html",
      "Properties": {
        "AuthenticationConfiguration": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-authenticationconfiguration",
          "Required": true,
          "Type": "AuthenticationConfiguration",
          "UpdateType": "Mutable"
        },
        "SkillPackage": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-skillpackage",
          "Required": true,
          "Type": "SkillPackage",
          "UpdateType": "Mutable"
        },
        "VendorId": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-vendorid",
          "PrimitiveType": "String",
          "Required": true,
          "UpdateType": "Immutable"
        }
      }
    }
  },
  "ValueTypes": {
    "AWS::AccessAnalyzer::Analyzer.AnalyzerName": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::AmazonMQ::Broker.DeploymentMode": {
      "AllowedValues": [
        "ACTIVE_STANDBY_MULTI_AZ",
        "CLUSTER_MULTI_AZ",
        "SINGLE_INSTANCE"
      ]
    },
    "AWS::AmazonMQ::Broker.EngineType": {
      "AllowedValues": [
        "ACTIVEMQ",
        "RABBITMQ"
      ]
    },
    "AWS::AmazonMQ::Broker.EngineVersion": {
      "AllowedValues": [
        "3.8.6",
        "5.15.0",
        "5.15.6",
        "5.15.8",
        "5.15.9",
        "5.15.10",
        "5.15.12",
        "5.15.13",
        "5.15.14"
      ]
    },
    "AWS::AmazonMQ::Broker.HostInstanceType": {
      "AllowedValues": [
        "mq.m4.large",
        "mq.m5.2xlarge",
        "mq.m5.4xlarge",
        "mq.m5.large",
        "mq.m5.xlarge",
        "mq.t2.micro",
        "mq.t3.micro"
      ],
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::ApiGateway::Authorizer.AuthorizerResultTtlInSeconds": {
      "NumberMax": 3600,
      "NumberMin": 0
    },
    "AWS::ApiGateway::Authorizer.Type": {
      "AllowedValues": [
        "COGNITO_USER_POOLS",
        "REQUEST",
        "TOKEN"
      ]
    },
    "AWS::ApiGateway::GatewayResponse.ResponseType": {
      "AllowedValues": [
        "ACCESS_DENIED",
        "API_CONFIGURATION_ERROR",
        "AUTHORIZER_CONFIGURATION_ERROR",
        "AUTHORIZER_FAILURE",
        "BAD_REQUEST_BODY",
        "BAD_REQUEST_PARAMETERS",
        "DEFAULT_4XX",
        "DEFAULT_5XX",
        "EXPIRED_TOKEN",
        "INTEGRATION_FAILURE",
        "INTEGRATION_TIMEOUT",
        "INVALID_API_KEY",
        "INVALID_SIGNATURE",
        "MISSING_AUTHENTICATION_TOKEN",
        "QUOTA_EXCEEDED",
        "REQUEST_TOO_LARGE",
        "RESOURCE_NOT_FOUND",
        "THROTTLED",
        "UNAUTHORIZED",
        "UNSUPPORTED_MEDIA_TYPE"
      ]
    },
    "AWS::ApiGateway::RestApi.ApiKeySourceType": {
      "AllowedValues": [
        "AUTHORIZER",
        "HEADER"
      ]
    },
    "AWS::ApiGateway::UsagePlanKey.KeyType": {
      "AllowedValues": [
        "API_KEY"
      ]
    },
    "AWS::AppFlow::ConnectorProfile.AmplitudeConnectorProfileCredentials.ApiKey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.AmplitudeConnectorProfileCredentials.SecretKey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ConnectionMode": {
      "AllowedValues": [
        "Public",
        "Private"
      ]
    },
    "AWS::AppFlow::ConnectorProfile.ConnectorProfileName": {
      "AllowedPatternRegex": "[\\w/!@#+=.-]+"
    },
    "AWS::AppFlow::ConnectorProfile.ConnectorType": {
      "AllowedValues": [
        "Salesforce",
        "Singular",
        "Slack",
        "Redshift",
        "Marketo",
        "Googleanalytics",
        "Zendesk",
        "Servicenow",
        "Datadog",
        "Trendmicro",
        "Snowflake",
        "Dynatrace",
        "Infornexus",
        "Amplitude",
        "Veeva"
      ]
    },
    "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileCredentials.ApiKey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileCredentials.ApplicationKey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.DatadogConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.DynatraceConnectorProfileCredentials.ApiToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.DynatraceConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.AccessToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.ClientId": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.ClientSecret": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.GoogleAnalyticsConnectorProfileCredentials.RefreshToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.AccessKeyId": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.Datakey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.SecretAccessKey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileCredentials.UserId": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.InforNexusConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.KMSArn": {
      "AllowedPatternRegex": "arn:aws:kms:.*:[0-9]+:.*",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileCredentials.AccessToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileCredentials.ClientId": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileCredentials.ClientSecret": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.MarketoConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileCredentials.Password": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileCredentials.Username": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileProperties.BucketName": {
      "AllowedPatternRegex": "\\S+",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileProperties.DatabaseUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.RedshiftConnectorProfileProperties.RoleArn": {
      "AllowedPatternRegex": "arn:aws:iam:.*:[0-9]+:.*"
    },
    "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileCredentials.AccessToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileCredentials.ClientCredentialsArn": {
      "AllowedPatternRegex": "arn:aws:secretsmanager:.*:[0-9]+:.*"
    },
    "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileCredentials.RefreshToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SalesforceConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileCredentials.Password": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileCredentials.Username": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ServiceNowConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SingularConnectorProfileCredentials.ApiKey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileCredentials.AccessToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileCredentials.ClientId": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileCredentials.ClientSecret": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SlackConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileCredentials.Password": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileCredentials.Username": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.AccountName": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.BucketName": {
      "AllowedPatternRegex": "\\S+",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.PrivateLinkServiceName": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.Region": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.Stage": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.SnowflakeConnectorProfileProperties.Warehouse": {
      "AllowedPatternRegex": "[\\s\\w/!@#+=.-]*"
    },
    "AWS::AppFlow::ConnectorProfile.TrendmicroConnectorProfileCredentials.ApiSecretKey": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileCredentials.Password": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileCredentials.Username": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.VeevaConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileCredentials.AccessToken": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileCredentials.ClientId": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileCredentials.ClientSecret": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::ConnectorProfile.ZendeskConnectorProfileProperties.InstanceUrl": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.AggregationConfig.AggregationType": {
      "AllowedValues": [
        "None",
        "SingleFile"
      ]
    },
    "AWS::AppFlow::Flow.AmplitudeSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Amplitude": {
      "AllowedValues": [
        "BETWEEN"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Datadog": {
      "AllowedValues": [
        "PROJECTION",
        "BETWEEN",
        "EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Dynatrace": {
      "AllowedValues": [
        "PROJECTION",
        "BETWEEN",
        "EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.GoogleAnalytics": {
      "AllowedValues": [
        "PROJECTION",
        "BETWEEN"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.InforNexus": {
      "AllowedValues": [
        "PROJECTION",
        "BETWEEN",
        "EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Marketo": {
      "AllowedValues": [
        "PROJECTION",
        "LESS_THAN",
        "GREATER_THAN",
        "BETWEEN",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.S3": {
      "AllowedValues": [
        "PROJECTION",
        "LESS_THAN",
        "GREATER_THAN",
        "BETWEEN",
        "LESS_THAN_OR_EQUAL_TO",
        "GREATER_THAN_OR_EQUAL_TO",
        "EQUAL_TO",
        "NOT_EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Salesforce": {
      "AllowedValues": [
        "PROJECTION",
        "LESS_THAN",
        "CONTAINS",
        "GREATER_THAN",
        "BETWEEN",
        "LESS_THAN_OR_EQUAL_TO",
        "GREATER_THAN_OR_EQUAL_TO",
        "EQUAL_TO",
        "NOT_EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.ServiceNow": {
      "AllowedValues": [
        "PROJECTION",
        "LESS_THAN",
        "CONTAINS",
        "GREATER_THAN",
        "BETWEEN",
        "LESS_THAN_OR_EQUAL_TO",
        "GREATER_THAN_OR_EQUAL_TO",
        "EQUAL_TO",
        "NOT_EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Singular": {
      "AllowedValues": [
        "PROJECTION",
        "EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Slack": {
      "AllowedValues": [
        "PROJECTION",
        "BETWEEN",
        "EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Trendmicro": {
      "AllowedValues": [
        "PROJECTION",
        "EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Veeva": {
      "AllowedValues": [
        "PROJECTION",
        "LESS_THAN",
        "GREATER_THAN",
        "BETWEEN",
        "LESS_THAN_OR_EQUAL_TO",
        "GREATER_THAN_OR_EQUAL_TO",
        "EQUAL_TO",
        "NOT_EQUAL_TO",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.ConnectorOperator.Zendesk": {
      "AllowedValues": [
        "PROJECTION",
        "GREATER_THAN",
        "ADDITION",
        "MULTIPLICATION",
        "DIVISION",
        "SUBTRACTION",
        "MASK_ALL",
        "MASK_FIRST_N",
        "MASK_LAST_N",
        "VALIDATE_NON_NULL",
        "VALIDATE_NON_ZERO",
        "VALIDATE_NON_NEGATIVE",
        "VALIDATE_NUMERIC",
        "NO_OP"
      ]
    },
    "AWS::AppFlow::Flow.DatadogSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.Description": {
      "AllowedPatternRegex": "[\\w!@#\\-.?,\\s]*"
    },
    "AWS::AppFlow::Flow.DestinationFlowConfig.ConnectorProfileName": {
      "AllowedPatternRegex": "[\\w/!@#+=.-]+"
    },
    "AWS::AppFlow::Flow.DestinationFlowConfig.ConnectorType": {
      "AllowedValues": [
        "Salesforce",
        "Singular",
        "Slack",
        "Redshift",
        "S3",
        "Marketo",
        "Googleanalytics",
        "Zendesk",
        "Servicenow",
        "Datadog",
        "Trendmicro",
        "Snowflake",
        "Dynatrace",
        "Infornexus",
        "Amplitude",
        "Veeva",
        "EventBridge",
        "Upsolver"
      ]
    },
    "AWS::AppFlow::Flow.DynatraceSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.ErrorHandlingConfig.BucketName": {
      "AllowedPatternRegex": "\\S+",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::AppFlow::Flow.EventBridgeDestinationProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.FlowName": {
      "AllowedPatternRegex": "[a-zA-Z0-9][\\w!@#.-]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::AppFlow::Flow.GoogleAnalyticsSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.InforNexusSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.KMSArn": {
      "AllowedPatternRegex": "arn:aws:kms:.*:[0-9]+:.*",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::AppFlow::Flow.MarketoSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.PrefixConfig.PrefixFormat": {
      "AllowedValues": [
        "YEAR",
        "MONTH",
        "DAY",
        "HOUR",
        "MINUTE"
      ]
    },
    "AWS::AppFlow::Flow.PrefixConfig.PrefixType": {
      "AllowedValues": [
        "FILENAME",
        "PATH",
        "PATH_AND_FILENAME"
      ]
    },
    "AWS::AppFlow::Flow.RedshiftDestinationProperties.IntermediateBucketName": {
      "AllowedPatternRegex": "\\S+",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::AppFlow::Flow.RedshiftDestinationProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.S3DestinationProperties.BucketName": {
      "AllowedPatternRegex": "\\S+",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::AppFlow::Flow.S3OutputFormatConfig.FileType": {
      "AllowedValues": [
        "CSV",
        "JSON",
        "PARQUET"
      ]
    },
    "AWS::AppFlow::Flow.S3SourceProperties.BucketName": {
      "AllowedPatternRegex": "\\S+",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::AppFlow::Flow.SalesforceDestinationProperties.IdFieldNames": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.SalesforceDestinationProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.SalesforceDestinationProperties.WriteOperationType": {
      "AllowedValues": [
        "INSERT",
        "UPSERT",
        "UPDATE"
      ]
    },
    "AWS::AppFlow::Flow.SalesforceSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.ScheduledTriggerProperties.DataPullMode": {
      "AllowedValues": [
        "Incremental",
        "Complete"
      ]
    },
    "AWS::AppFlow::Flow.ScheduledTriggerProperties.ScheduleExpression": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::AppFlow::Flow.ServiceNowSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.SingularSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.SlackSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.SnowflakeDestinationProperties.IntermediateBucketName": {
      "AllowedPatternRegex": "\\S+",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::AppFlow::Flow.SnowflakeDestinationProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.SourceFlowConfig.ConnectorProfileName": {
      "AllowedPatternRegex": "[\\w/!@#+=.-]+"
    },
    "AWS::AppFlow::Flow.SourceFlowConfig.ConnectorType": {
      "AllowedValues": [
        "Salesforce",
        "Singular",
        "Slack",
        "Redshift",
        "S3",
        "Marketo",
        "Googleanalytics",
        "Zendesk",
        "Servicenow",
        "Datadog",
        "Trendmicro",
        "Snowflake",
        "Dynatrace",
        "Infornexus",
        "Amplitude",
        "Veeva",
        "EventBridge",
        "Upsolver"
      ]
    },
    "AWS::AppFlow::Flow.Task.TaskType": {
      "AllowedValues": [
        "Arithmetic",
        "Filter",
        "Map",
        "Mask",
        "Merge",
        "Truncate",
        "Validate"
      ]
    },
    "AWS::AppFlow::Flow.TaskPropertiesObject.Key": {
      "AllowedValues": [
        "VALUE",
        "VALUES",
        "DATA_TYPE",
        "UPPER_BOUND",
        "LOWER_BOUND",
        "SOURCE_DATA_TYPE",
        "DESTINATION_DATA_TYPE",
        "VALIDATION_ACTION",
        "MASK_VALUE",
        "MASK_LENGTH",
        "TRUNCATE_LENGTH",
        "MATH_OPERATION_FIELDS_ORDER",
        "CONCAT_FORMAT",
        "SUBFIELD_CATEGORY_MAP"
      ]
    },
    "AWS::AppFlow::Flow.TaskPropertiesObject.Value": {
      "AllowedPatternRegex": ".+"
    },
    "AWS::AppFlow::Flow.TrendmicroSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.TriggerConfig.TriggerType": {
      "AllowedValues": [
        "Scheduled",
        "Event",
        "OnDemand"
      ]
    },
    "AWS::AppFlow::Flow.UpsolverDestinationProperties.BucketName": {
      "AllowedPatternRegex": "^(upsolver-appflow)\\S*",
      "StringMax": 63,
      "StringMin": 16
    },
    "AWS::AppFlow::Flow.UpsolverS3OutputFormatConfig.FileType": {
      "AllowedValues": [
        "CSV",
        "JSON",
        "PARQUET"
      ]
    },
    "AWS::AppFlow::Flow.VeevaSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppFlow::Flow.ZendeskSourceProperties.Object": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::AppStream::Fleet.DisconnectTimeoutInSeconds": {
      "NumberMax": 360000,
      "NumberMin": 60
    },
    "AWS::AppStream::Fleet.IdleDisconnectTimeoutInSeconds": {
      "NumberMax": 3600,
      "NumberMin": 0
    },
    "AWS::AppStream::Fleet.MaxUserDurationInSeconds": {
      "NumberMax": 360000,
      "NumberMin": 600
    },
    "AWS::AppSync::DataSource.Type": {
      "AllowedValues": [
        "AMAZON_DYNAMODB",
        "AMAZON_ELASTICSEARCH",
        "AWS_LAMBDA",
        "HTTP",
        "NONE",
        "RELATIONAL_DATABASE"
      ]
    },
    "AWS::AppSync::GraphQLApi.AuthType": {
      "AllowedValues": [
        "AMAZON_COGNITO_USER_POOLS",
        "API_KEY",
        "AWS_IAM",
        "OPENID_CONNECT"
      ]
    },
    "AWS::AppSync::Resolver.Kind": {
      "AllowedValues": [
        "PIPELINE",
        "UNIT"
      ]
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.PolicyType": {
      "AllowedValues": [
        "StepScaling",
        "TargetTrackingScaling"
      ]
    },
    "AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification.PredefinedMetricType": {
      "AllowedValues": [
        "ALBRequestCountPerTarget",
        "AppStreamAverageCapacityUtilization",
        "CassandraReadCapacityUtilization",
        "CassandraWriteCapacityUtilization",
        "ComprehendInferenceUtilization",
        "DynamoDBReadCapacityUtilization",
        "DynamoDBWriteCapacityUtilization",
        "EC2SpotFleetRequestAverageCPUUtilization",
        "EC2SpotFleetRequestAverageNetworkIn",
        "EC2SpotFleetRequestAverageNetworkOut",
        "ECSServiceAverageCPUUtilization",
        "ECSServiceAverageMemoryUtilization",
        "KafkaBrokerStorageUtilization",
        "LambdaProvisionedConcurrencyUtilization",
        "RDSReaderAverageCPUUtilization",
        "RDSReaderAverageDatabaseConnections",
        "SageMakerVariantInvocationsPerInstance"
      ]
    },
    "AWS::ApplicationInsights::Application.Alarm.AlarmName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.Alarm.Severity": {
      "AllowedValues": [
        "HIGH",
        "MEDIUM",
        "LOW"
      ]
    },
    "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.ComponentARN": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:[\\w\\d-]+:([\\w\\d-]*)?:[\\w\\d_-]*([:/].+)*$",
      "StringMax": 300,
      "StringMin": 20
    },
    "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.ComponentConfigurationMode": {
      "AllowedValues": [
        "DEFAULT",
        "DEFAULT_WITH_OVERWRITE",
        "CUSTOM"
      ]
    },
    "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.ComponentName": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.ComponentMonitoringSetting.Tier": {
      "AllowedValues": [
        "DOT_NET_WORKER",
        "DOT_NET_WEB",
        "DOT_NET_CORE",
        "SQL_SERVER",
        "SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP",
        "MYSQL",
        "POSTGRESQL",
        "DEFAULT",
        "CUSTOM",
        "JAVA_JMX",
        "ORACLE"
      ]
    },
    "AWS::ApplicationInsights::Application.CustomComponent.ComponentName": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.CustomComponent.ResourceList": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:[\\w\\d-]+:([\\w\\d-]*)?:[\\w\\d_-]*([:/].+)*$",
      "StringMax": 300,
      "StringMin": 20
    },
    "AWS::ApplicationInsights::Application.Log.Encoding": {
      "AllowedValues": [
        "utf-8",
        "utf-16",
        "ascii"
      ]
    },
    "AWS::ApplicationInsights::Application.Log.LogGroupName": {
      "AllowedPatternRegex": "[\\.\\-_/#A-Za-z0-9]+",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.Log.LogPath": {
      "AllowedPatternRegex": "^([a-zA-Z]:\\\\[\\\\\\S|*\\S]?.*|/[^\"']*)$",
      "StringMax": 260,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.Log.LogType": {
      "AllowedValues": [
        "SQL_SERVER",
        "MYSQL",
        "MYSQL_SLOW_QUERY",
        "POSTGRESQL",
        "ORACLE_ALERT",
        "ORACLE_LISTENER",
        "IIS",
        "APPLICATION",
        "WINDOWS_EVENTS",
        "WINDOWS_EVENTS_GENERIC_ERRORS",
        "SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP",
        "DEFAULT",
        "CUSTOM",
        "STEP_FUNCTION",
        "API_GATEWAY_ACCESS",
        "API_GATEWAY_EXECUTION"
      ]
    },
    "AWS::ApplicationInsights::Application.Log.PatternSet": {
      "AllowedPatternRegex": "[a-zA-Z0-9.-_]*",
      "StringMax": 30,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.LogPattern.Pattern": {
      "StringMax": 50,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.LogPattern.PatternName": {
      "AllowedPatternRegex": "[a-zA-Z0-9.-_]*",
      "StringMax": 50,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.LogPatternSet.PatternSetName": {
      "AllowedPatternRegex": "[a-zA-Z0-9.-_]*",
      "StringMax": 30,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.OpsItemSNSTopicArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:[\\w\\d-]+:([\\w\\d-]*)?:[\\w\\d_-]*([:/].+)*$",
      "StringMax": 300,
      "StringMin": 20
    },
    "AWS::ApplicationInsights::Application.ResourceGroupName": {
      "AllowedPatternRegex": "[a-zA-Z0-9.-_]*",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.SubComponentTypeConfiguration.SubComponentType": {
      "AllowedValues": [
        "AWS::EC2::Instance",
        "AWS::EC2::Volume"
      ]
    },
    "AWS::ApplicationInsights::Application.WindowsEvent.EventLevels": {
      "AllowedValues": [
        "INFORMATION",
        "WARNING",
        "ERROR",
        "CRITICAL",
        "VERBOSE"
      ]
    },
    "AWS::ApplicationInsights::Application.WindowsEvent.EventName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9_ \\\\/-]$",
      "StringMax": 260,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.WindowsEvent.LogGroupName": {
      "AllowedPatternRegex": "[\\.\\-_/#A-Za-z0-9]+",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::ApplicationInsights::Application.WindowsEvent.PatternSet": {
      "AllowedPatternRegex": "[a-zA-Z0-9.-_]*",
      "StringMax": 30,
      "StringMin": 1
    },
    "AWS::Athena::DataCatalog.Description": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::Athena::DataCatalog.Name": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Athena::DataCatalog.Type": {
      "AllowedValues": [
        "LAMBDA",
        "GLUE",
        "HIVE"
      ]
    },
    "AWS::Athena::NamedQuery.Database": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::Athena::NamedQuery.Description": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::Athena::NamedQuery.Name": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::Athena::NamedQuery.QueryString": {
      "StringMax": 262144,
      "StringMin": 1
    },
    "AWS::Athena::NamedQuery.WorkGroup": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::Athena::WorkGroup.EncryptionConfiguration.EncryptionOption": {
      "AllowedValues": [
        "SSE_S3",
        "SSE_KMS",
        "CSE_KMS"
      ]
    },
    "AWS::Athena::WorkGroup.Name": {
      "AllowedPatternRegex": "[a-zA-Z0-9._-]{1,128}",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::Athena::WorkGroup.State": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::AuditManager::Assessment.AWSAccount.EmailAddress": {
      "AllowedPatternRegex": "^.*@.*$",
      "StringMax": 320,
      "StringMin": 1
    },
    "AWS::AuditManager::Assessment.AWSAccount.Id": {
      "AllowedPatternRegex": "^[0-9]{12}$",
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::AuditManager::Assessment.AWSAccount.Name": {
      "AllowedPatternRegex": "^[\\u0020-\\u007E]+$",
      "StringMax": 50,
      "StringMin": 1
    },
    "AWS::AuditManager::Assessment.AssessmentReportsDestination.DestinationType": {
      "AllowedValues": [
        "S3"
      ]
    },
    "AWS::AuditManager::Assessment.Delegation.AssessmentId": {
      "AllowedPatternRegex": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$",
      "StringMax": 36,
      "StringMin": 36
    },
    "AWS::AuditManager::Assessment.Delegation.AssessmentName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9-_\\.]+$",
      "StringMax": 127,
      "StringMin": 1
    },
    "AWS::AuditManager::Assessment.Delegation.Comment": {
      "AllowedPatternRegex": "^[\\w\\W\\s\\S]*$"
    },
    "AWS::AuditManager::Assessment.Delegation.ControlSetId": {
      "AllowedPatternRegex": "^[\\w\\W\\s\\S]*$",
      "StringMax": 300,
      "StringMin": 1
    },
    "AWS::AuditManager::Assessment.Delegation.CreatedBy": {
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::AuditManager::Assessment.Delegation.Id": {
      "AllowedPatternRegex": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$",
      "StringMax": 36,
      "StringMin": 36
    },
    "AWS::AuditManager::Assessment.Delegation.RoleArn": {
      "AllowedPatternRegex": "^arn:.*:iam:.*",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::AuditManager::Assessment.Delegation.RoleType": {
      "AllowedValues": [
        "PROCESS_OWNER",
        "RESOURCE_OWNER"
      ]
    },
    "AWS::AuditManager::Assessment.Delegation.Status": {
      "AllowedValues": [
        "IN_PROGRESS",
        "UNDER_REVIEW",
        "COMPLETE"
      ]
    },
    "AWS::AuditManager::Assessment.FrameworkId": {
      "AllowedPatternRegex": "^([a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}|.*\\S.*)$",
      "StringMax": 36,
      "StringMin": 32
    },
    "AWS::AuditManager::Assessment.Name": {
      "AllowedPatternRegex": "^[a-zA-Z0-9-_\\.]+$",
      "StringMax": 127,
      "StringMin": 1
    },
    "AWS::AuditManager::Assessment.Role.RoleArn": {
      "AllowedPatternRegex": "^arn:.*:iam:.*",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::AuditManager::Assessment.Role.RoleType": {
      "AllowedValues": [
        "PROCESS_OWNER",
        "RESOURCE_OWNER"
      ]
    },
    "AWS::AuditManager::Assessment.Status": {
      "AllowedValues": [
        "ACTIVE",
        "INACTIVE"
      ]
    },
    "AWS::AutoScaling::AutoScalingGroup.HealthCheckType": {
      "AllowedValues": [
        "EC2",
        "ELB"
      ]
    },
    "AWS::AutoScaling::LifecycleHook.DefaultResult": {
      "AllowedValues": [
        "ABANDON",
        "CONTINUE"
      ]
    },
    "AWS::AutoScaling::LifecycleHook.LifecycleTransition": {
      "AllowedValues": [
        "autoscaling:EC2_INSTANCE_LAUNCHING",
        "autoscaling:EC2_INSTANCE_TERMINATING"
      ]
    },
    "AWS::AutoScaling::ScalingPolicy.AdjustmentType": {
      "AllowedValues": [
        "ChangeInCapacity",
        "ExactCapacity",
        "PercentChangeInCapacity"
      ]
    },
    "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification.Statistic": {
      "AllowedValues": [
        "Average",
        "Maximum",
        "Minimum",
        "SampleCount",
        "Sum"
      ]
    },
    "AWS::AutoScaling::ScalingPolicy.MetricAggregationType": {
      "AllowedValues": [
        "Average",
        "Maximum",
        "Minimum"
      ]
    },
    "AWS::AutoScaling::ScalingPolicy.PolicyType": {
      "AllowedValues": [
        "SimpleScaling",
        "StepScaling",
        "TargetTrackingScaling"
      ]
    },
    "AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification.PredefinedMetricType": {
      "AllowedValues": [
        "ALBRequestCountPerTarget",
        "ASGAverageCPUUtilization",
        "ASGAverageNetworkIn",
        "ASGAverageNetworkOut"
      ]
    },
    "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.PredictiveScalingMaxCapacityBehavior": {
      "AllowedValues": [
        "SetForecastCapacityToMaxCapacity",
        "SetMaxCapacityAboveForecastCapacity",
        "SetMaxCapacityToForecastCapacity"
      ]
    },
    "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.PredictiveScalingMode": {
      "AllowedValues": [
        "ForecastAndScale",
        "ForecastOnly"
      ]
    },
    "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.ScalableDimension": {
      "AllowedValues": [
        "autoscaling:autoScalingGroup:DesiredCapacity",
        "dynamodb:index:ReadCapacityUnits",
        "dynamodb:index:WriteCapacityUnits",
        "dynamodb:table:ReadCapacityUnits",
        "dynamodb:table:WriteCapacityUnits",
        "ec2:spot-fleet-request:TargetCapacity",
        "ecs:service:DesiredCount",
        "rds:cluster:ReadReplicaCount"
      ]
    },
    "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction.ServiceNamespace": {
      "AllowedValues": [
        "autoscaling",
        "dynamodb",
        "ec2",
        "ecs",
        "rds"
      ]
    },
    "AWS::Backup::BackupPlan.Id": {
      "GetAtt": {
        "AWS::Backup::BackupPlan": "BackupPlanId"
      },
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::Backup::BackupPlan"
        ]
      }
    },
    "AWS::Backup::BackupVault.BackupVaultName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9\\-\\_]{2,50}$",
      "GetAtt": {
        "AWS::Backup::BackupVault": "BackupVaultName"
      },
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::Backup::BackupVault"
        ]
      }
    },
    "AWS::Budgets::Budget.BudgetType": {
      "AllowedValues": [
        "COST",
        "RI_COVERAGE",
        "RI_UTILIZATION",
        "SAVINGS_PLANS_COVERAGE",
        "SAVINGS_PLANS_UTILIZATION",
        "USAGE"
      ]
    },
    "AWS::Budgets::Budget.ComparisonOperator": {
      "AllowedValues": [
        "EQUAL_TO",
        "GREATER_THAN",
        "LESS_THAN"
      ]
    },
    "AWS::Budgets::Budget.NotificationType": {
      "AllowedValues": [
        "ACTUAL",
        "FORECASTED"
      ]
    },
    "AWS::Budgets::Budget.SubscriptionType": {
      "AllowedValues": [
        "EMAIL",
        "SNS"
      ]
    },
    "AWS::Budgets::Budget.Threshold": {
      "NumberMax": 1000000000,
      "NumberMin": 0.1
    },
    "AWS::Budgets::Budget.ThresholdType": {
      "AllowedValues": [
        "ABSOLUTE_VALUE",
        "PERCENTAGE"
      ]
    },
    "AWS::Budgets::Budget.TimeUnit": {
      "AllowedValues": [
        "ANNUALLY",
        "DAILY",
        "MONTHLY",
        "QUARTERLY"
      ]
    },
    "AWS::Cassandra::Keyspace.KeyspaceName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9][a-zA-Z0-9_]{1,47}$"
    },
    "AWS::Cassandra::Table.BillingMode.Mode": {
      "AllowedValues": [
        "PROVISIONED",
        "ON_DEMAND"
      ]
    },
    "AWS::Cassandra::Table.ClusteringKeyColumn.OrderBy": {
      "AllowedValues": [
        "ASC",
        "DESC"
      ]
    },
    "AWS::Cassandra::Table.Column.ColumnName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9][a-zA-Z0-9_]{1,47}$"
    },
    "AWS::Cassandra::Table.KeyspaceName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9][a-zA-Z0-9_]{1,47}$"
    },
    "AWS::Cassandra::Table.TableName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9][a-zA-Z0-9_]{1,47}$"
    },
    "AWS::Chatbot::SlackChannelConfiguration.ConfigurationName": {
      "AllowedPatternRegex": "^[A-Za-z0-9-_]+$",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::Chatbot::SlackChannelConfiguration.IamRoleArn": {
      "AllowedPatternRegex": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$"
    },
    "AWS::Chatbot::SlackChannelConfiguration.LoggingLevel": {
      "AllowedPatternRegex": "^(ERROR|INFO|NONE)$"
    },
    "AWS::Chatbot::SlackChannelConfiguration.SlackChannelId": {
      "AllowedPatternRegex": "^[A-Za-z0-9]+$",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Chatbot::SlackChannelConfiguration.SlackWorkspaceId": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Chatbot::SlackChannelConfiguration.SnsTopicArns": {
      "AllowedPatternRegex": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$"
    },
    "AWS::Cloud9::EnvironmentEC2.AutomaticStopTimeMinutes": {
      "NumberMax": 20160,
      "NumberMin": 0
    },
    "AWS::CloudFormation::ModuleDefaultVersion.Arn": {
      "AllowedPatternRegex": "^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/module/.+/[0-9]{8}$"
    },
    "AWS::CloudFormation::ModuleDefaultVersion.ModuleName": {
      "AllowedPatternRegex": "^[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::MODULE"
    },
    "AWS::CloudFormation::ModuleDefaultVersion.VersionId": {
      "AllowedPatternRegex": "^[0-9]{8}$"
    },
    "AWS::CloudFormation::ModuleVersion.ModuleName": {
      "AllowedPatternRegex": "^[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::MODULE"
    },
    "AWS::CloudFormation::ResourceDefaultVersion.TypeName": {
      "AllowedPatternRegex": "^[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$"
    },
    "AWS::CloudFormation::ResourceDefaultVersion.TypeVersionArn": {
      "AllowedPatternRegex": "^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/resource/.+$"
    },
    "AWS::CloudFormation::ResourceDefaultVersion.VersionId": {
      "AllowedPatternRegex": "^[A-Za-z0-9-]{1,128}$"
    },
    "AWS::CloudFormation::ResourceVersion.LoggingConfig.LogGroupName": {
      "AllowedPatternRegex": "^[\\.\\-_/#A-Za-z0-9]+$",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::CloudFormation::ResourceVersion.LoggingConfig.LogRoleArn": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::CloudFormation::ResourceVersion.TypeName": {
      "AllowedPatternRegex": "^[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$"
    },
    "AWS::CloudFormation::StackSet.AdministrationRoleARN": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::CloudFormation::StackSet.Capabilities": {
      "AllowedValues": [
        "CAPABILITY_IAM",
        "CAPABILITY_NAMED_IAM",
        "CAPABILITY_AUTO_EXPAND"
      ]
    },
    "AWS::CloudFormation::StackSet.DeploymentTargets.Accounts": {
      "AllowedPatternRegex": "^[0-9]{12}$"
    },
    "AWS::CloudFormation::StackSet.DeploymentTargets.OrganizationalUnitIds": {
      "AllowedPatternRegex": "^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$"
    },
    "AWS::CloudFormation::StackSet.Description": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::CloudFormation::StackSet.ExecutionRoleName": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::CloudFormation::StackSet.OperationPreferences.RegionOrder": {
      "AllowedPatternRegex": "^[a-zA-Z0-9-]{1,128}$"
    },
    "AWS::CloudFormation::StackSet.PermissionModel": {
      "AllowedValues": [
        "SERVICE_MANAGED",
        "SELF_MANAGED"
      ]
    },
    "AWS::CloudFormation::StackSet.StackInstances.Regions": {
      "AllowedPatternRegex": "^[a-zA-Z0-9-]{1,128}$"
    },
    "AWS::CloudFormation::StackSet.StackSetName": {
      "AllowedPatternRegex": "^[a-zA-Z][a-zA-Z0-9\\-]{0,127}$"
    },
    "AWS::CloudFormation::StackSet.TemplateBody": {
      "StringMax": 51200,
      "StringMin": 1
    },
    "AWS::CloudFormation::StackSet.TemplateURL": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::CloudFormation::WaitCondition.Timeout": {
      "NumberMax": 43200,
      "NumberMin": 0
    },
    "AWS::CloudFront::CachePolicy.CookiesConfig.CookieBehavior": {
      "AllowedPatternRegex": "^(none|whitelist|allExcept|all)$"
    },
    "AWS::CloudFront::CachePolicy.HeadersConfig.HeaderBehavior": {
      "AllowedPatternRegex": "^(none|whitelist)$"
    },
    "AWS::CloudFront::CachePolicy.QueryStringsConfig.QueryStringBehavior": {
      "AllowedPatternRegex": "^(none|whitelist|allExcept|all)$"
    },
    "AWS::CloudFront::Distribution.ErrorCode": {
      "AllowedValues": [
        "400",
        "403",
        "404",
        "405",
        "414",
        "416",
        "500",
        "501",
        "502",
        "503",
        "504"
      ]
    },
    "AWS::CloudFront::Distribution.EventType": {
      "AllowedValues": [
        "origin-request",
        "origin-response",
        "viewer-request",
        "viewer-response"
      ]
    },
    "AWS::CloudFront::Distribution.HttpVersion": {
      "AllowedValues": [
        "http1.1",
        "http2"
      ]
    },
    "AWS::CloudFront::Distribution.Locations": {
      "AllowedValues": [
        "AD",
        "AE",
        "AF",
        "AG",
        "AI",
        "AL",
        "AM",
        "AO",
        "AQ",
        "AR",
        "AS",
        "AT",
        "AU",
        "AW",
        "AX",
        "AZ",
        "BA",
        "BB",
        "BD",
        "BE",
        "BF",
        "BG",
        "BH",
        "BI",
        "BJ",
        "BL",
        "BM",
        "BN",
        "BO",
        "BQ",
        "BR",
        "BS",
        "BT",
        "BV",
        "BW",
        "BY",
        "BZ",
        "CA",
        "CC",
        "CD",
        "CF",
        "CG",
        "CH",
        "CI",
        "CK",
        "CL",
        "CM",
        "CN",
        "CO",
        "CR",
        "CU",
        "CV",
        "CW",
        "CX",
        "CY",
        "CZ",
        "DE",
        "DJ",
        "DK",
        "DM",
        "DO",
        "DZ",
        "EC",
        "EE",
        "EG",
        "EH",
        "ER",
        "ES",
        "ET",
        "FI",
        "FJ",
        "FK",
        "FM",
        "FO",
        "FR",
        "GA",
        "GB",
        "GD",
        "GE",
        "GF",
        "GG",
        "GH",
        "GI",
        "GL",
        "GM",
        "GN",
        "GP",
        "GQ",
        "GR",
        "GS",
        "GT",
        "GU",
        "GW",
        "GY",
        "HK",
        "HM",
        "HN",
        "HR",
        "HT",
        "HU",
        "ID",
        "IE",
        "IL",
        "IM",
        "IN",
        "IO",
        "IQ",
        "IR",
        "IS",
        "IT",
        "JE",
        "JM",
        "JO",
        "JP",
        "KE",
        "KG",
        "KH",
        "KI",
        "KM",
        "KN",
        "KP",
        "KR",
        "KW",
        "KY",
        "KZ",
        "LA",
        "LB",
        "LC",
        "LI",
        "LK",
        "LR",
        "LS",
        "LT",
        "LU",
        "LV",
        "LY",
        "MA",
        "MC",
        "MD",
        "ME",
        "MF",
        "MG",
        "MH",
        "MK",
        "ML",
        "MM",
        "MN",
        "MO",
        "MP",
        "MQ",
        "MR",
        "MS",
        "MT",
        "MU",
        "MV",
        "MW",
        "MX",
        "MY",
        "MZ",
        "NA",
        "NC",
        "NE",
        "NF",
        "NG",
        "NI",
        "NL",
        "NO",
        "NP",
        "NR",
        "NU",
        "NZ",
        "OM",
        "PA",
        "PE",
        "PF",
        "PG",
        "PH",
        "PK",
        "PL",
        "PM",
        "PN",
        "PR",
        "PS",
        "PT",
        "PW",
        "PY",
        "QA",
        "RE",
        "RO",
        "RS",
        "RU",
        "RW",
        "SA",
        "SB",
        "SC",
        "SD",
        "SE",
        "SG",
        "SH",
        "SI",
        "SJ",
        "SK",
        "SL",
        "SM",
        "SN",
        "SO",
        "SR",
        "SS",
        "ST",
        "SV",
        "SX",
        "SY",
        "SZ",
        "TC",
        "TD",
        "TF",
        "TG",
        "TH",
        "TJ",
        "TK",
        "TL",
        "TM",
        "TN",
        "TO",
        "TR",
        "TT",
        "TV",
        "TW",
        "TZ",
        "UA",
        "UG",
        "UM",
        "US",
        "UY",
        "UZ",
        "VA",
        "VC",
        "VE",
        "VG",
        "VI",
        "VN",
        "VU",
        "WF",
        "WS",
        "YE",
        "YT",
        "ZA",
        "ZM",
        "ZW"
      ]
    },
    "AWS::CloudFront::Distribution.MinimumProtocolVersion": {
      "AllowedValues": [
        "SSLv3",
        "TLSv1",
        "TLSv1.1_2016",
        "TLSv1.2_2018",
        "TLSv1.2_2019",
        "TLSv1_2016"
      ]
    },
    "AWS::CloudFront::Distribution.OriginProtocolPolicy": {
      "AllowedValues": [
        "http-only",
        "https-only",
        "match-viewer"
      ]
    },
    "AWS::CloudFront::Distribution.OriginSSLProtocols": {
      "AllowedValues": [
        "SSLv3",
        "TLSv1",
        "TLSv1.1",
        "TLSv1.2"
      ]
    },
    "AWS::CloudFront::Distribution.PriceClass": {
      "AllowedValues": [
        "PriceClass_100",
        "PriceClass_200",
        "PriceClass_All"
      ]
    },
    "AWS::CloudFront::Distribution.ResponseCode": {
      "AllowedValues": [
        "200",
        "400",
        "403",
        "404",
        "405",
        "414",
        "416",
        "500",
        "501",
        "502",
        "503",
        "504"
      ]
    },
    "AWS::CloudFront::Distribution.RestrictionType": {
      "AllowedValues": [
        "blacklist",
        "none",
        "whitelist"
      ]
    },
    "AWS::CloudFront::Distribution.SslSupportMethod": {
      "AllowedValues": [
        "sni-only",
        "static-ip",
        "vip"
      ]
    },
    "AWS::CloudFront::Distribution.ViewerProtocolPolicy": {
      "AllowedValues": [
        "allow-all",
        "https-only",
        "redirect-to-https"
      ]
    },
    "AWS::CloudFront::OriginRequestPolicy.CookiesConfig.CookieBehavior": {
      "AllowedPatternRegex": "^(none|whitelist|all)$"
    },
    "AWS::CloudFront::OriginRequestPolicy.HeadersConfig.HeaderBehavior": {
      "AllowedPatternRegex": "^(none|whitelist|allViewer|allViewerAndWhitelistCloudFront)$"
    },
    "AWS::CloudFront::OriginRequestPolicy.QueryStringsConfig.QueryStringBehavior": {
      "AllowedPatternRegex": "^(none|whitelist|all)$"
    },
    "AWS::CloudFront::RealtimeLogConfig.SamplingRate": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::CloudTrail::Trail.DataResourceType": {
      "AllowedValues": [
        "AWS::Lambda::Function",
        "AWS::S3::Object"
      ]
    },
    "AWS::CloudTrail::Trail.EventReadWriteType": {
      "AllowedValues": [
        "All",
        "ReadOnly",
        "WriteOnly"
      ]
    },
    "AWS::CloudWatch::Alarm.AlarmAction": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::CloudWatch::Alarm.AlarmActions": {
      "ListMax": 5,
      "ListMin": 0
    },
    "AWS::CloudWatch::Alarm.ComparisonOperator": {
      "AllowedValues": [
        "GreaterThanOrEqualToThreshold",
        "GreaterThanThreshold",
        "GreaterThanUpperThreshold",
        "LessThanLowerOrGreaterThanUpperThreshold",
        "LessThanLowerThreshold",
        "LessThanOrEqualToThreshold",
        "LessThanThreshold"
      ]
    },
    "AWS::CloudWatch::Alarm.Statistic": {
      "AllowedValues": [
        "Average",
        "Maximum",
        "Minimum",
        "SampleCount",
        "Sum"
      ]
    },
    "AWS::CloudWatch::Alarm.TreatMissingData": {
      "AllowedValues": [
        "breaching",
        "ignore",
        "missing",
        "notBreaching"
      ]
    },
    "AWS::CloudWatch::Alarm.Unit": {
      "AllowedValues": [
        "Bits",
        "Bits/Second",
        "Bytes",
        "Bytes/Second",
        "Count",
        "Count/Second",
        "Gigabits",
        "Gigabits/Second",
        "Gigabytes",
        "Gigabytes/Second",
        "Kilobits",
        "Kilobits/Second",
        "Kilobytes",
        "Kilobytes/Second",
        "Megabits",
        "Megabits/Second",
        "Megabytes",
        "Megabytes/Second",
        "Microseconds",
        "Milliseconds",
        "None",
        "Percent",
        "Seconds",
        "Terabits",
        "Terabits/Second",
        "Terabytes",
        "Terabytes/Second"
      ]
    },
    "AWS::CloudWatch::CompositeAlarm.AlarmActions": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::CloudWatch::CompositeAlarm.AlarmName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::CloudWatch::CompositeAlarm.AlarmRule": {
      "StringMax": 10240,
      "StringMin": 1
    },
    "AWS::CloudWatch::CompositeAlarm.InsufficientDataActions": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::CloudWatch::CompositeAlarm.OKActions": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::CloudWatch::MetricStream.FirehoseArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::CloudWatch::MetricStream.MetricStreamFilter.Namespace": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::CloudWatch::MetricStream.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::CloudWatch::MetricStream.OutputFormat": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::CloudWatch::MetricStream.RoleArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::CodeArtifact::Domain.DomainName": {
      "AllowedPatternRegex": "^([a-z][a-z0-9\\-]{0,48}[a-z0-9])$",
      "StringMax": 50,
      "StringMin": 2
    },
    "AWS::CodeArtifact::Repository.DomainName": {
      "AllowedPatternRegex": "^([a-z][a-z0-9\\-]{0,48}[a-z0-9])$",
      "StringMax": 50,
      "StringMin": 2
    },
    "AWS::CodeArtifact::Repository.DomainOwner": {
      "AllowedPatternRegex": "[0-9]{12}"
    },
    "AWS::CodeArtifact::Repository.RepositoryName": {
      "AllowedPatternRegex": "^([A-Za-z0-9][A-Za-z0-9._\\-]{1,99})$",
      "StringMax": 100,
      "StringMin": 2
    },
    "AWS::CodeBuild::Project.Artifacts.Packaging": {
      "AllowedValues": [
        "NONE",
        "ZIP"
      ]
    },
    "AWS::CodeBuild::Project.Artifacts.Type": {
      "AllowedValues": [
        "CODEPIPELINE",
        "NO_ARTIFACTS",
        "S3"
      ]
    },
    "AWS::CodeBuild::Project.Environment.ComputeType": {
      "AllowedValues": [
        "BUILD_GENERAL1_2XLARGE",
        "BUILD_GENERAL1_LARGE",
        "BUILD_GENERAL1_MEDIUM",
        "BUILD_GENERAL1_SMALL"
      ]
    },
    "AWS::CodeBuild::Project.Environment.ImagePullCredentialsType": {
      "AllowedValues": [
        "CODEBUILD",
        "SERVICE_ROLE"
      ]
    },
    "AWS::CodeBuild::Project.Environment.Type": {
      "AllowedValues": [
        "ARM_CONTAINER",
        "LINUX_CONTAINER",
        "LINUX_GPU_CONTAINER",
        "WINDOWS_CONTAINER",
        "WINDOWS_SERVER_2019_CONTAINER"
      ]
    },
    "AWS::CodeBuild::Project.ProjectCache.Type": {
      "AllowedValues": [
        "LOCAL",
        "NO_CACHE",
        "S3"
      ]
    },
    "AWS::CodeBuild::Project.QueuedTimeoutInMinutes": {
      "NumberMax": 480,
      "NumberMin": 5
    },
    "AWS::CodeBuild::Project.Source.Type": {
      "AllowedValues": [
        "BITBUCKET",
        "CODECOMMIT",
        "CODEPIPELINE",
        "GITHUB",
        "GITHUB_ENTERPRISE",
        "NO_SOURCE",
        "S3"
      ]
    },
    "AWS::CodeBuild::Project.TimeoutInMinutes": {
      "NumberMax": 480,
      "NumberMin": 5
    },
    "AWS::CodeCommit::Repository.RepositoryName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9._\\-]+(?<!\\.git)$",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::CodeCommit::Repository.RepositoryTrigger.Events": {
      "AllowedValues": [
        "all",
        "createReference",
        "deleteReference",
        "updateReference"
      ]
    },
    "AWS::CodeDeploy::Application.ComputePlatform": {
      "AllowedValues": [
        "ECS",
        "Lambda",
        "Server"
      ]
    },
    "AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts.Type": {
      "AllowedValues": [
        "FLEET_PERCENT",
        "HOST_COUNT"
      ]
    },
    "AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration.Events": {
      "AllowedValues": [
        "DEPLOYMENT_FAILURE",
        "DEPLOYMENT_STOP_ON_ALARM",
        "DEPLOYMENT_STOP_ON_REQUEST"
      ]
    },
    "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle.DeploymentOption": {
      "AllowedValues": [
        "WITHOUT_TRAFFIC_CONTROL",
        "WITH_TRAFFIC_CONTROL"
      ]
    },
    "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle.DeploymentType": {
      "AllowedValues": [
        "BLUE_GREEN",
        "IN_PLACE"
      ]
    },
    "AWS::CodeGuruProfiler::ProfilingGroup.Channel.channelId": {
      "AllowedPatternRegex": "[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}"
    },
    "AWS::CodeGuruProfiler::ProfilingGroup.Channel.channelUri": {
      "AllowedPatternRegex": "^arn:aws([-\\w]*):[a-z-]+:(([a-z]+-)+[0-9]+)?:([0-9]{12}):[^.]+$"
    },
    "AWS::CodeGuruProfiler::ProfilingGroup.ComputePlatform": {
      "AllowedValues": [
        "Default",
        "AWSLambda"
      ]
    },
    "AWS::CodeGuruProfiler::ProfilingGroup.ProfilingGroupName": {
      "AllowedPatternRegex": "^[\\w-]+$",
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::CodeGuruReviewer::RepositoryAssociation.ConnectionArn": {
      "AllowedPatternRegex": "arn:aws(-[\\w]+)*:.+:.+:[0-9]{12}:.+"
    },
    "AWS::CodeGuruReviewer::RepositoryAssociation.Name": {
      "AllowedPatternRegex": "^\\S[\\w.-]*$",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::CodeGuruReviewer::RepositoryAssociation.Owner": {
      "AllowedPatternRegex": "^\\S(.*\\S)?$",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::CodeGuruReviewer::RepositoryAssociation.Type": {
      "AllowedValues": [
        "CodeCommit",
        "Bitbucket",
        "GitHubEnterpriseServer",
        "S3Bucket"
      ]
    },
    "AWS::CodePipeline::CustomActionType.ConfigurationProperties.Type": {
      "AllowedValues": [
        "Boolean",
        "Number",
        "String"
      ]
    },
    "AWS::CodePipeline::Pipeline.ActionTypeId.Category": {
      "AllowedValues": [
        "Approval",
        "Build",
        "Deploy",
        "Invoke",
        "Source",
        "Test"
      ]
    },
    "AWS::CodePipeline::Pipeline.ActionTypeId.Owner": {
      "AllowedValues": [
        "AWS",
        "Custom",
        "ThirdParty"
      ]
    },
    "AWS::CodePipeline::Pipeline.ArtifactStore.Type": {
      "AllowedValues": [
        "S3"
      ]
    },
    "AWS::CodePipeline::Pipeline.BlockerDeclaration.Type": {
      "AllowedValues": [
        "Schedule"
      ]
    },
    "AWS::CodeStarConnections::Connection.ConnectionName": {
      "StringMax": 32,
      "StringMin": 1
    },
    "AWS::CodeStarConnections::Connection.HostArn": {
      "AllowedPatternRegex": "arn:aws(-[\\w]+)*:.+:.+:[0-9]{12}:.+"
    },
    "AWS::Cognito::UserPool.AliasAttributes": {
      "AllowedValues": [
        "email",
        "phone_number",
        "preferred_username"
      ]
    },
    "AWS::Cognito::UserPool.MfaConfiguration": {
      "AllowedValues": [
        "OFF",
        "ON",
        "OPTIONAL"
      ]
    },
    "AWS::Cognito::UserPool.SchemaAttribute.AttributeDataType": {
      "AllowedValues": [
        "Boolean",
        "DateTime",
        "Number",
        "String"
      ]
    },
    "AWS::Cognito::UserPool.UsernameAttributes": {
      "AllowedValues": [
        "email",
        "phone_number"
      ]
    },
    "AWS::Cognito::UserPoolClient.ExplicitAuthFlows": {
      "AllowedValues": [
        "ADMIN_NO_SRP_AUTH",
        "ALLOW_ADMIN_USER_PASSWORD_AUTH",
        "ALLOW_CUSTOM_AUTH",
        "ALLOW_REFRESH_TOKEN_AUTH",
        "ALLOW_USER_PASSWORD_AUTH",
        "ALLOW_USER_SRP_AUTH",
        "CUSTOM_AUTH_FLOW_ONLY",
        "USER_PASSWORD_AUTH"
      ]
    },
    "AWS::Cognito::UserPoolClient.RefreshTokenValidity": {
      "NumberMax": 3650,
      "NumberMin": 0,
      "Ref": {
        "Parameters": [
          "String",
          "Number"
        ]
      }
    },
    "AWS::Cognito::UserPoolUser.DesiredDeliveryMediums": {
      "AllowedValues": [
        "EMAIL",
        "SMS"
      ]
    },
    "AWS::Cognito::UserPoolUser.MessageAction": {
      "AllowedValues": [
        "RESEND",
        "SUPPRESS"
      ]
    },
    "AWS::Config::ConfigRule.Description": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Config::ConfigRule.MaximumExecutionFrequency": {
      "AllowedValues": [
        "One_Hour",
        "Six_Hours",
        "Three_Hours",
        "Twelve_Hours",
        "TwentyFour_Hours"
      ]
    },
    "AWS::Config::ConfigRule.Source.Owner": {
      "AllowedValues": [
        "AWS",
        "CUSTOM_LAMBDA"
      ]
    },
    "AWS::Config::ConfigRule.SourceDetail.EventSource": {
      "AllowedValues": [
        "aws.config"
      ]
    },
    "AWS::Config::ConfigRule.SourceDetail.MessageType": {
      "AllowedValues": [
        "ConfigurationItemChangeNotification",
        "ConfigurationSnapshotDeliveryCompleted",
        "OversizedConfigurationItemChangeNotification",
        "ScheduledNotification"
      ]
    },
    "AWS::Config::ConfigurationRecorder.ResourceTypes": {
      "AllowedValues": [
        "AWS::ACM::Certificate",
        "AWS::ApiGateway::RestApi",
        "AWS::ApiGateway::Stage",
        "AWS::ApiGatewayV2::Api",
        "AWS::ApiGatewayV2::Stage",
        "AWS::AutoScaling::AutoScalingGroup",
        "AWS::AutoScaling::LaunchConfiguration",
        "AWS::AutoScaling::ScalingPolicy",
        "AWS::AutoScaling::ScheduledAction",
        "AWS::CloudFormation::Stack",
        "AWS::CloudFront::Distribution",
        "AWS::CloudFront::StreamingDistribution",
        "AWS::CloudTrail::Trail",
        "AWS::CloudWatch::Alarm",
        "AWS::CodeBuild::Project",
        "AWS::CodePipeline::Pipeline",
        "AWS::Config::ResourceCompliance",
        "AWS::DynamoDB::Table",
        "AWS::EC2::CustomerGateway",
        "AWS::EC2::EIP",
        "AWS::EC2::EgressOnlyInternetGateway",
        "AWS::EC2::FlowLog",
        "AWS::EC2::Host",
        "AWS::EC2::Instance",
        "AWS::EC2::InternetGateway",
        "AWS::EC2::NatGateway",
        "AWS::EC2::NetworkAcl",
        "AWS::EC2::NetworkInterface",
        "AWS::EC2::RegisteredHAInstance",
        "AWS::EC2::RouteTable",
        "AWS::EC2::SecurityGroup",
        "AWS::EC2::Subnet",
        "AWS::EC2::VPC",
        "AWS::EC2::VPCEndpoint",
        "AWS::EC2::VPCEndpointService",
        "AWS::EC2::VPCPeeringConnection",
        "AWS::EC2::VPNConnection",
        "AWS::EC2::VPNGateway",
        "AWS::EC2::Volume",
        "AWS::ElasticBeanstalk::Application",
        "AWS::ElasticBeanstalk::ApplicationVersion",
        "AWS::ElasticBeanstalk::Environment",
        "AWS::ElasticLoadBalancing::LoadBalancer",
        "AWS::ElasticLoadBalancingV2::LoadBalancer",
        "AWS::Elasticsearch::Domain",
        "AWS::IAM::Group",
        "AWS::IAM::Policy",
        "AWS::IAM::Role",
        "AWS::IAM::User",
        "AWS::KMS::Key",
        "AWS::Lambda::Function",
        "AWS::NetworkFirewall::Firewall",
        "AWS::NetworkFirewall::FirewallPolicy",
        "AWS::NetworkFirewall::RuleGroup",
        "AWS::QLDB::Ledger",
        "AWS::RDS::DBCluster",
        "AWS::RDS::DBClusterSnapshot",
        "AWS::RDS::DBInstance",
        "AWS::RDS::DBSecurityGroup",
        "AWS::RDS::DBSnapshot",
        "AWS::RDS::DBSubnetGroup",
        "AWS::RDS::EventSubscription",
        "AWS::Redshift::Cluster",
        "AWS::Redshift::ClusterParameterGroup",
        "AWS::Redshift::ClusterSecurityGroup",
        "AWS::Redshift::ClusterSnapshot",
        "AWS::Redshift::ClusterSubnetGroup",
        "AWS::Redshift::EventSubscription",
        "AWS::S3::AccountPublicAccessBlock",
        "AWS::S3::Bucket",
        "AWS::SNS::Topic",
        "AWS::SQS::Queue",
        "AWS::SSM::AssociationCompliance",
        "AWS::SSM::FileData",
        "AWS::SSM::ManagedInstanceInventory",
        "AWS::SSM::PatchCompliance",
        "AWS::SecretsManager::Secret",
        "AWS::ServiceCatalog::CloudFormationProduct",
        "AWS::ServiceCatalog::CloudFormationProvisionedProduct",
        "AWS::ServiceCatalog::Portfolio",
        "AWS::Shield::Protection",
        "AWS::ShieldRegional::Protection",
        "AWS::WAF::RateBasedRule",
        "AWS::WAF::Rule",
        "AWS::WAF::RuleGroup",
        "AWS::WAF::WebACL",
        "AWS::WAFRegional::RateBasedRule",
        "AWS::WAFRegional::Rule",
        "AWS::WAFRegional::RuleGroup",
        "AWS::WAFRegional::WebACL",
        "AWS::WAFv2::IPSet",
        "AWS::WAFv2::ManagedRuleSet",
        "AWS::WAFv2::RegexPatternSet",
        "AWS::WAFv2::RuleGroup",
        "AWS::WAFv2::WebACL",
        "AWS::XRay::EncryptionConfig"
      ]
    },
    "AWS::Config::ConformancePack.ConformancePackName": {
      "AllowedPatternRegex": "[a-zA-Z][-a-zA-Z0-9]*",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Config::ConformancePack.TemplateBody": {
      "StringMax": 51200,
      "StringMin": 1
    },
    "AWS::Config::ConformancePack.TemplateS3Uri": {
      "AllowedPatternRegex": "s3://.*",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::Config::OrganizationConformancePack.OrganizationConformancePackName": {
      "AllowedPatternRegex": "[a-zA-Z][-a-zA-Z0-9]*",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::Config::OrganizationConformancePack.TemplateBody": {
      "StringMax": 51200,
      "StringMin": 1
    },
    "AWS::Config::OrganizationConformancePack.TemplateS3Uri": {
      "AllowedPatternRegex": "s3://.*",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::Config::StoredQuery.QueryDescription": {
      "AllowedPatternRegex": "[\\s\\S]*"
    },
    "AWS::Config::StoredQuery.QueryExpression": {
      "AllowedPatternRegex": "[\\s\\S]*",
      "StringMax": 4096,
      "StringMin": 1
    },
    "AWS::Config::StoredQuery.QueryName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9-_]+$",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::DataBrew::Dataset.Format": {
      "AllowedValues": [
        "CSV",
        "JSON",
        "PARQUET",
        "EXCEL"
      ]
    },
    "AWS::DataBrew::Dataset.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Job.CsvOutputOptions.Delimiter": {
      "StringMax": 1,
      "StringMin": 1
    },
    "AWS::DataBrew::Job.DatasetName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Job.EncryptionKeyArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::DataBrew::Job.EncryptionMode": {
      "AllowedValues": [
        "SSE-KMS",
        "SSE-S3"
      ]
    },
    "AWS::DataBrew::Job.LogSubscription": {
      "AllowedValues": [
        "ENABLE",
        "DISABLE"
      ]
    },
    "AWS::DataBrew::Job.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Job.Output.CompressionFormat": {
      "AllowedValues": [
        "GZIP",
        "LZ4",
        "SNAPPY",
        "BZIP2",
        "DEFLATE",
        "LZO",
        "BROTLI",
        "ZSTD",
        "ZLIB"
      ]
    },
    "AWS::DataBrew::Job.Output.Format": {
      "AllowedValues": [
        "CSV",
        "JSON",
        "PARQUET",
        "GLUEPARQUET",
        "AVRO",
        "ORC",
        "XML"
      ]
    },
    "AWS::DataBrew::Job.ProjectName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Job.Type": {
      "AllowedValues": [
        "PROFILE",
        "RECIPE"
      ]
    },
    "AWS::DataBrew::Project.DatasetName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Project.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Project.RecipeName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Recipe.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Schedule.CronExpression": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::DataBrew::Schedule.JobNames": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataBrew::Schedule.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::DataSync::Agent.ActivationKey": {
      "AllowedPatternRegex": "[A-Z0-9]{5}(-[A-Z0-9]{5}){4}"
    },
    "AWS::DataSync::Agent.AgentName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9\\s+=._:@/-]+$",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::DataSync::Agent.SecurityGroupArns": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\\-0-9]*:[0-9]{12}:security-group/.*$"
    },
    "AWS::DataSync::Agent.SubnetArns": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\\-0-9]*:[0-9]{12}:subnet/.*$"
    },
    "AWS::DataSync::Agent.VpcEndpointId": {
      "AllowedPatternRegex": "^vpce-[0-9a-f]{17}$"
    },
    "AWS::DataSync::LocationEFS.Ec2Config.SecurityGroupArns": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\\-0-9]*:[0-9]{12}:security-group/.*$"
    },
    "AWS::DataSync::LocationEFS.Ec2Config.SubnetArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\\-0-9]*:[0-9]{12}:subnet/.*$"
    },
    "AWS::DataSync::LocationEFS.EfsFilesystemArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):elasticfilesystem:[a-z\\-0-9]*:[0-9]{12}:file-system/fs-.*$"
    },
    "AWS::DataSync::LocationFSxWindows.Domain": {
      "AllowedPatternRegex": "^([A-Za-z0-9]+[A-Za-z0-9-.]*)*[A-Za-z0-9-]*[A-Za-z0-9]$"
    },
    "AWS::DataSync::LocationFSxWindows.FsxFilesystemArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):fsx:[a-z\\-0-9]*:[0-9]{12}:file-system/fs-.*$"
    },
    "AWS::DataSync::LocationFSxWindows.Password": {
      "AllowedPatternRegex": "^.{0,104}$"
    },
    "AWS::DataSync::LocationFSxWindows.SecurityGroupArns": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\\-0-9]*:[0-9]{12}:security-group/.*$"
    },
    "AWS::DataSync::LocationFSxWindows.User": {
      "AllowedPatternRegex": "^[^\\x5B\\x5D\\\\/:;|=,+*?]{1,104}$"
    },
    "AWS::DataSync::LocationNFS.MountOptions.Version": {
      "AllowedValues": [
        "AUTOMATIC",
        "NFS3",
        "NFS4_0",
        "NFS4_1"
      ]
    },
    "AWS::DataSync::LocationNFS.OnPremConfig.AgentArns": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\\-0-9]+:[0-9]{12}:agent/agent-[0-9a-z]{17}$"
    },
    "AWS::DataSync::LocationNFS.ServerHostname": {
      "AllowedPatternRegex": "^(([a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9\\-]*[A-Za-z0-9])$"
    },
    "AWS::DataSync::LocationObjectStorage.AccessKey": {
      "AllowedPatternRegex": "^.+$",
      "StringMax": 200,
      "StringMin": 8
    },
    "AWS::DataSync::LocationObjectStorage.AgentArns": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\\-0-9]+:[0-9]{12}:agent/agent-[0-9a-z]{17}$"
    },
    "AWS::DataSync::LocationObjectStorage.SecretKey": {
      "AllowedPatternRegex": "^.+$",
      "StringMax": 200,
      "StringMin": 8
    },
    "AWS::DataSync::LocationObjectStorage.ServerHostname": {
      "AllowedPatternRegex": "^(([a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9\\-]*[A-Za-z0-9])$"
    },
    "AWS::DataSync::LocationObjectStorage.ServerPort": {
      "NumberMax": 65536,
      "NumberMin": 1
    },
    "AWS::DataSync::LocationObjectStorage.ServerProtocol": {
      "AllowedValues": [
        "HTTPS",
        "HTTP"
      ]
    },
    "AWS::DataSync::LocationS3.S3BucketArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):s3:[a-z\\-0-9]*:[0-9]*:.*$"
    },
    "AWS::DataSync::LocationS3.S3Config.BucketAccessRoleArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):iam::[0-9]{12}:role/.*$"
    },
    "AWS::DataSync::LocationS3.S3StorageClass": {
      "AllowedValues": [
        "STANDARD",
        "STANDARD_IA",
        "ONEZONE_IA",
        "INTELLIGENT_TIERING",
        "GLACIER",
        "DEEP_ARCHIVE"
      ]
    },
    "AWS::DataSync::LocationSMB.AgentArns": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\\-0-9]+:[0-9]{12}:agent/agent-[0-9a-z]{17}$"
    },
    "AWS::DataSync::LocationSMB.Domain": {
      "AllowedPatternRegex": "^([A-Za-z0-9]+[A-Za-z0-9-.]*)*[A-Za-z0-9-]*[A-Za-z0-9]$"
    },
    "AWS::DataSync::LocationSMB.MountOptions.Version": {
      "AllowedValues": [
        "AUTOMATIC",
        "SMB2",
        "SMB3"
      ]
    },
    "AWS::DataSync::LocationSMB.Password": {
      "AllowedPatternRegex": "^.{0,104}$"
    },
    "AWS::DataSync::LocationSMB.ServerHostname": {
      "AllowedPatternRegex": "^(([a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9\\-]*[A-Za-z0-9])$"
    },
    "AWS::DataSync::LocationSMB.User": {
      "AllowedPatternRegex": "^[^\\x5B\\x5D\\\\/:;|=,+*?]{1,104}$"
    },
    "AWS::DataSync::Task.CloudWatchLogGroupArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):logs:[a-z\\-0-9]*:[0-9]{12}:log-group:([^:\\*]*)(:\\*)?$"
    },
    "AWS::DataSync::Task.DestinationLocationArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\\-0-9]+:[0-9]{12}:location/loc-[0-9a-z]{17}$"
    },
    "AWS::DataSync::Task.FilterRule.FilterType": {
      "AllowedPatternRegex": "^[A-Z0-9_]+$",
      "AllowedValues": [
        "SIMPLE_PATTERN"
      ]
    },
    "AWS::DataSync::Task.FilterRule.Value": {
      "AllowedPatternRegex": "^[^\\x00]+$"
    },
    "AWS::DataSync::Task.Name": {
      "AllowedPatternRegex": "^[a-zA-Z0-9\\s+=._:@/-]+$",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::DataSync::Task.Options.Atime": {
      "AllowedValues": [
        "NONE",
        "BEST_EFFORT"
      ]
    },
    "AWS::DataSync::Task.Options.Gid": {
      "AllowedValues": [
        "NONE",
        "INT_VALUE",
        "NAME",
        "BOTH"
      ]
    },
    "AWS::DataSync::Task.Options.LogLevel": {
      "AllowedValues": [
        "OFF",
        "BASIC",
        "TRANSFER"
      ]
    },
    "AWS::DataSync::Task.Options.Mtime": {
      "AllowedValues": [
        "NONE",
        "PRESERVE"
      ]
    },
    "AWS::DataSync::Task.Options.OverwriteMode": {
      "AllowedValues": [
        "ALWAYS",
        "NEVER"
      ]
    },
    "AWS::DataSync::Task.Options.PosixPermissions": {
      "AllowedValues": [
        "NONE",
        "PRESERVE"
      ]
    },
    "AWS::DataSync::Task.Options.PreserveDeletedFiles": {
      "AllowedValues": [
        "PRESERVE",
        "REMOVE"
      ]
    },
    "AWS::DataSync::Task.Options.PreserveDevices": {
      "AllowedValues": [
        "NONE",
        "PRESERVE"
      ]
    },
    "AWS::DataSync::Task.Options.TaskQueueing": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::DataSync::Task.Options.TransferMode": {
      "AllowedValues": [
        "CHANGED",
        "ALL"
      ]
    },
    "AWS::DataSync::Task.Options.Uid": {
      "AllowedValues": [
        "NONE",
        "INT_VALUE",
        "NAME",
        "BOTH"
      ]
    },
    "AWS::DataSync::Task.Options.VerifyMode": {
      "AllowedValues": [
        "POINT_IN_TIME_CONSISTENT",
        "ONLY_FILES_TRANSFERRED",
        "NONE"
      ]
    },
    "AWS::DataSync::Task.SourceLocationArn": {
      "AllowedPatternRegex": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\\-0-9]+:[0-9]{12}:location/loc-[0-9a-z]{17}$"
    },
    "AWS::DataSync::Task.TaskSchedule.ScheduleExpression": {
      "AllowedPatternRegex": "^[a-zA-Z0-9\\ \\_\\*\\?\\,\\|\\^\\-\\/\\#\\s\\(\\)\\+]*$"
    },
    "AWS::Default::Default.EnabledState": {
      "AllowedValues": [
        "DISABLED",
        "ENABLED"
      ]
    },
    "AWS::Detective::MemberInvitation.GraphArn": {
      "AllowedPatternRegex": "arn:aws(-[\\w]+)*:detective:(([a-z]+-)+[0-9]+):[0-9]{12}:graph:[0-9a-f]{32}"
    },
    "AWS::Detective::MemberInvitation.MemberEmailAddress": {
      "AllowedPatternRegex": ".*@.*"
    },
    "AWS::Detective::MemberInvitation.MemberId": {
      "AllowedPatternRegex": "[0-9]{12}"
    },
    "AWS::Detective::MemberInvitation.Message": {
      "StringMax": 1000,
      "StringMin": 1
    },
    "AWS::DocDB::DBCluster.BackupRetentionPeriod": {
      "NumberMax": 35,
      "NumberMin": 1
    },
    "AWS::DynamoDB::Table.AttributeDefinition.AttributeType": {
      "AllowedValues": [
        "B",
        "N",
        "S"
      ]
    },
    "AWS::DynamoDB::Table.BillingMode": {
      "AllowedValues": [
        "PAY_PER_REQUEST",
        "PROVISIONED"
      ]
    },
    "AWS::DynamoDB::Table.KeySchema.KeyType": {
      "AllowedValues": [
        "HASH",
        "RANGE"
      ]
    },
    "AWS::DynamoDB::Table.Projection.ProjectionType": {
      "AllowedValues": [
        "ALL",
        "INCLUDE",
        "KEYS_ONLY"
      ]
    },
    "AWS::DynamoDB::Table.StreamSpecification.StreamViewType": {
      "AllowedValues": [
        "KEYS_ONLY",
        "NEW_AND_OLD_IMAGES",
        "NEW_IMAGE",
        "OLD_IMAGE"
      ]
    },
    "AWS::EC2::EIP.AllocationId": {
      "GetAtt": {
        "AWS::EC2::EIP": "AllocationId"
      },
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::EC2::FlowLog.LogDestinationType": {
      "AllowedValues": [
        "cloud-watch-logs",
        "s3"
      ]
    },
    "AWS::EC2::FlowLog.ResourceType": {
      "AllowedValues": [
        "NetworkInterface",
        "Subnet",
        "VPC"
      ]
    },
    "AWS::EC2::FlowLog.TrafficType": {
      "AllowedValues": [
        "ACCEPT",
        "ALL",
        "REJECT"
      ]
    },
    "AWS::EC2::Instance.Affinity": {
      "AllowedValues": [
        "default",
        "host"
      ]
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisAclRule.Protocol": {
      "AllowedValues": [
        "tcp",
        "udp"
      ]
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisPacketHeader.Protocol": {
      "AllowedValues": [
        "tcp",
        "udp"
      ]
    },
    "AWS::EC2::NetworkInsightsAnalysis.AnalysisSecurityGroupRule.Protocol": {
      "AllowedValues": [
        "tcp",
        "udp"
      ]
    },
    "AWS::EC2::NetworkInsightsAnalysis.Explanation.Protocols": {
      "AllowedValues": [
        "tcp",
        "udp"
      ]
    },
    "AWS::EC2::NetworkInsightsPath.Protocol": {
      "AllowedValues": [
        "tcp",
        "udp"
      ]
    },
    "AWS::EC2::PrefixList.AddressFamily": {
      "AllowedValues": [
        "IPv4",
        "IPv6"
      ]
    },
    "AWS::EC2::PrefixList.Entry.Cidr": {
      "StringMax": 46,
      "StringMin": 1
    },
    "AWS::EC2::PrefixList.MaxEntries": {
      "NumberMax": 1000,
      "NumberMin": 1
    },
    "AWS::EC2::PrefixList.PrefixListName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::EC2::SecurityGroup.Description": {
      "AllowedPatternRegex": "^([a-z,A-Z,0-9,. _\\-:/()#,@[\\]+=&;\\{\\}!$*])*$",
      "StringMax": 255,
      "StringMin": 0
    },
    "AWS::EC2::SecurityGroup.GroupId": {
      "GetAtt": {
        "AWS::EC2::SecurityGroup": "GroupId"
      },
      "Ref": {
        "Parameters": [
          "String",
          "SecurityGroupId"
        ],
        "Resources": [
          "AWS::EC2::SecurityGroup"
        ]
      }
    },
    "AWS::EC2::SecurityGroup.GroupIds": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "Strings",
          "SecurityGroupIds"
        ]
      }
    },
    "AWS::EC2::SecurityGroup.NameOrGroupId": {
      "GetAtt": {
        "AWS::EC2::SecurityGroup": "GroupId",
        "AWS::EC2::VPC": "DefaultSecurityGroup"
      },
      "Ref": {
        "Parameters": [
          "String",
          "SecurityGroupId"
        ],
        "Resources": [
          "AWS::EC2::SecurityGroup"
        ]
      }
    },
    "AWS::EC2::SecurityGroup.NamesOrGroupIds": {
      "GetAtt": {
        "AWS::ElasticLoadBalancingV2::LoadBalancer": "SecurityGroups"
      },
      "Ref": {
        "Parameters": [
          "Strings",
          "SecurityGroupIds"
        ]
      }
    },
    "AWS::EC2::VPC.Id": {
      "GetAtt": {
        "AWS::EC2::SecurityGroup": "VpcId",
        "AWS::EC2::Subnet": "VpcId",
        "AWS::SSM::Parameter": "Value"
      },
      "Ref": {
        "Parameters": [
          "VpcId",
          "String"
        ],
        "Resources": [
          "AWS::EC2::VPC"
        ]
      }
    },
    "AWS::ECR::ReplicationConfiguration.ReplicationDestination.Region": {
      "AllowedPatternRegex": "[0-9a-z-]{2,25}"
    },
    "AWS::ECR::ReplicationConfiguration.ReplicationDestination.RegistryId": {
      "AllowedPatternRegex": "^[0-9]{12}$"
    },
    "AWS::ECR::Repository.ImageTagMutability": {
      "AllowedValues": [
        "MUTABLE",
        "IMMUTABLE"
      ]
    },
    "AWS::ECR::Repository.LifecyclePolicy.LifecyclePolicyText": {
      "StringMax": 30720,
      "StringMin": 100
    },
    "AWS::ECR::Repository.LifecyclePolicy.RegistryId": {
      "AllowedPatternRegex": "^[0-9]{12}$",
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::ECR::Repository.RepositoryName": {
      "AllowedPatternRegex": "^(?=.{2,256}$)((?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*)$",
      "StringMax": 256,
      "StringMin": 2
    },
    "AWS::ECS::CapacityProvider.AutoScalingGroupProvider.ManagedTerminationProtection": {
      "AllowedValues": [
        "DISABLED",
        "ENABLED"
      ]
    },
    "AWS::ECS::CapacityProvider.ManagedScaling.Status": {
      "AllowedValues": [
        "DISABLED",
        "ENABLED"
      ]
    },
    "AWS::ECS::Service.AwsVpcConfiguration.AssignPublicIp": {
      "AllowedValues": [
        "DISABLED",
        "ENABLED"
      ]
    },
    "AWS::ECS::Service.DeploymentController.Type": {
      "AllowedValues": [
        "CODE_DEPLOY",
        "ECS",
        "EXTERNAL"
      ]
    },
    "AWS::ECS::Service.LaunchType": {
      "AllowedValues": [
        "EC2",
        "FARGATE"
      ]
    },
    "AWS::ECS::Service.PlacementConstraint.Type": {
      "AllowedValues": [
        "distinctInstance",
        "memberOf"
      ]
    },
    "AWS::ECS::Service.PlacementStrategy.Type": {
      "AllowedValues": [
        "binpack",
        "random",
        "spread"
      ]
    },
    "AWS::ECS::Service.PropagateTags": {
      "AllowedValues": [
        "SERVICE",
        "TASK_DEFINITION"
      ]
    },
    "AWS::ECS::Service.SchedulingStrategy": {
      "AllowedValues": [
        "DAEMON",
        "REPLICA"
      ]
    },
    "AWS::ECS::TaskDefinition.AuthorizationConfig.IAM": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::ECS::TaskDefinition.EFSVolumeConfiguration.TransitEncryption": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::ECS::TaskSet.AwsVpcConfiguration.AssignPublicIp": {
      "AllowedValues": [
        "DISABLED",
        "ENABLED"
      ]
    },
    "AWS::ECS::TaskSet.LaunchType": {
      "AllowedValues": [
        "EC2",
        "FARGATE"
      ]
    },
    "AWS::ECS::TaskSet.Scale.Unit": {
      "AllowedValues": [
        "PERCENT"
      ]
    },
    "AWS::EFS::AccessPoint.AccessPointTag.Key": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::EFS::AccessPoint.AccessPointTag.Value": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::EFS::AccessPoint.CreationInfo.Permissions": {
      "AllowedPatternRegex": "^[0-7]{3,4}$"
    },
    "AWS::EFS::AccessPoint.RootDirectory.Path": {
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::EKS::Addon.ResolveConflicts": {
      "AllowedValues": [
        "NONE",
        "OVERWRITE"
      ]
    },
    "AWS::EKS::FargateProfile.Label.Key": {
      "StringMax": 127,
      "StringMin": 1
    },
    "AWS::EKS::FargateProfile.Label.Value": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::EMR::Studio.AuthMode": {
      "AllowedValues": [
        "SSO",
        "IAM"
      ]
    },
    "AWS::EMR::Studio.DefaultS3Location": {
      "AllowedPatternRegex": "^s3://.*",
      "StringMax": 10280,
      "StringMin": 6
    },
    "AWS::EMR::Studio.EngineSecurityGroupId": {
      "AllowedPatternRegex": "^sg-[a-zA-Z0-9\\-._]+$",
      "StringMax": 256,
      "StringMin": 4
    },
    "AWS::EMR::Studio.Name": {
      "AllowedPatternRegex": "[a-zA-Z0-9_-]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::EMR::Studio.ServiceRole": {
      "AllowedPatternRegex": "^arn:aws(-(cn|us-gov))?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$"
    },
    "AWS::EMR::Studio.SubnetIds": {
      "AllowedPatternRegex": "^(subnet-[a-f0-9]{13})|(subnet-[a-f0-9]{8})\\Z"
    },
    "AWS::EMR::Studio.UserRole": {
      "AllowedPatternRegex": "^arn:aws(-(cn|us-gov))?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$"
    },
    "AWS::EMR::Studio.VpcId": {
      "AllowedPatternRegex": "^(vpc-[0-9a-f]{8}|vpc-[0-9a-f]{17})$"
    },
    "AWS::EMR::Studio.WorkspaceSecurityGroupId": {
      "AllowedPatternRegex": "^sg-[a-zA-Z0-9\\-._]+$"
    },
    "AWS::EMR::StudioSessionMapping.IdentityType": {
      "AllowedValues": [
        "USER",
        "GROUP"
      ]
    },
    "AWS::EMR::StudioSessionMapping.SessionPolicyArn": {
      "AllowedPatternRegex": "^arn:aws(-(cn|us-gov))?:iam::([0-9]{12})?:policy\\/[^.]+$"
    },
    "AWS::EMR::StudioSessionMapping.StudioId": {
      "AllowedPatternRegex": "^es-[0-9A-Z]+",
      "StringMax": 256,
      "StringMin": 4
    },
    "AWS::ElastiCache::GlobalReplicationGroup.GlobalReplicationGroupMember.Role": {
      "AllowedValues": [
        "PRIMARY",
        "SECONDARY"
      ]
    },
    "AWS::ElastiCache::ReplicationGroup.NumCacheClusters": {
      "NumberMax": 6,
      "NumberMin": 1
    },
    "AWS::ElastiCache::ReplicationGroup.ReplicasPerNodeGroup": {
      "NumberMax": 5,
      "NumberMin": 0
    },
    "AWS::ElastiCache::User.Engine": {
      "AllowedValues": [
        "redis"
      ]
    },
    "AWS::ElastiCache::User.UserId": {
      "AllowedPatternRegex": "[a-z][a-z0-9\\\\-]*"
    },
    "AWS::ElastiCache::UserGroup.Engine": {
      "AllowedValues": [
        "redis"
      ]
    },
    "AWS::ElastiCache::UserGroup.UserGroupId": {
      "AllowedPatternRegex": "[a-z][a-z0-9\\\\-]*"
    },
    "AWS::ElasticLoadBalancingV2::ListenerRule.Priority": {
      "NumberMax": 50000,
      "NumberMin": 1
    },
    "AWS::ElasticLoadBalancingV2::TargetGroup.HealthCheckIntervalSeconds": {
      "NumberMax": 300,
      "NumberMin": 5
    },
    "AWS::ElasticLoadBalancingV2::TargetGroup.UnhealthyThresholdCount": {
      "NumberMax": 10,
      "NumberMin": 2
    },
    "AWS::Events::ApiDestination.HttpMethod": {
      "AllowedValues": [
        "GET",
        "HEAD",
        "POST",
        "OPTIONS",
        "PUT",
        "DELETE",
        "PATCH"
      ]
    },
    "AWS::Events::ApiDestination.Name": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::Events::Connection.AuthorizationType": {
      "AllowedValues": [
        "API_KEY",
        "BASIC",
        "OAUTH_CLIENT_CREDENTIALS"
      ]
    },
    "AWS::Events::Connection.Name": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::Events::EventBusPolicy.Action": {
      "AllowedValues": [
        "events:PutEvents"
      ]
    },
    "AWS::Events::EventBusPolicy.Condition.Key": {
      "AllowedValues": [
        "aws:PrincipalOrgID"
      ]
    },
    "AWS::Events::EventBusPolicy.Condition.Type": {
      "AllowedValues": [
        "StringEquals"
      ]
    },
    "AWS::FMS::NotificationChannel.SnsRoleName": {
      "AllowedPatternRegex": "^([^\\s]+)$",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::FMS::NotificationChannel.SnsTopicArn": {
      "AllowedPatternRegex": "^([^\\s]+)$",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::FMS::Policy.IEMap.ACCOUNT": {
      "AllowedPatternRegex": "^([0-9]*)$",
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::FMS::Policy.IEMap.ORGUNIT": {
      "AllowedPatternRegex": "^(ou-[0-9a-z]{4,32}-[a-z0-9]{8,32})$",
      "StringMax": 68,
      "StringMin": 16
    },
    "AWS::FMS::Policy.PolicyName": {
      "AllowedPatternRegex": "^([a-zA-Z0-9_.:/=+\\-@]+)$",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::FMS::Policy.PolicyTag.Key": {
      "AllowedPatternRegex": "^([^\\s]*)$",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::FMS::Policy.PolicyTag.Value": {
      "AllowedPatternRegex": "^([^\\s]*)$"
    },
    "AWS::FMS::Policy.ResourceTag.Key": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::FMS::Policy.ResourceType": {
      "AllowedPatternRegex": "^([^\\s]*)$",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::FMS::Policy.ResourceTypeList": {
      "AllowedPatternRegex": "^([^\\s]*)$",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::FSx::FileSystem.StorageCapacity": {
      "NumberMax": 65536,
      "NumberMin": 32
    },
    "AWS::GameLift::Alias.Description": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::GameLift::Alias.Name": {
      "AllowedPatternRegex": ".*\\S.*",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::GameLift::Alias.RoutingStrategy.FleetId": {
      "AllowedPatternRegex": "^fleet-\\S+"
    },
    "AWS::GameLift::Alias.RoutingStrategy.Type": {
      "AllowedValues": [
        "SIMPLE",
        "TERMINAL"
      ]
    },
    "AWS::GameLift::GameServerGroup.BalancingStrategy": {
      "AllowedValues": [
        "SPOT_ONLY",
        "SPOT_PREFERRED",
        "ON_DEMAND_ONLY"
      ]
    },
    "AWS::GameLift::GameServerGroup.DeleteOption": {
      "AllowedValues": [
        "SAFE_DELETE",
        "FORCE_DELETE",
        "RETAIN"
      ]
    },
    "AWS::GameLift::GameServerGroup.GameServerGroupName": {
      "AllowedPatternRegex": "[a-zA-Z0-9-\\.]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::GameLift::GameServerGroup.GameServerProtectionPolicy": {
      "AllowedValues": [
        "NO_PROTECTION",
        "FULL_PROTECTION"
      ]
    },
    "AWS::GameLift::GameServerGroup.RoleArn": {
      "AllowedPatternRegex": "^arn:.*:role\\/[\\w+=,.@-]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::GameLift::GameServerGroup.VpcSubnets": {
      "AllowedPatternRegex": "^subnet-[0-9a-z]+$",
      "StringMax": 24,
      "StringMin": 15
    },
    "AWS::GlobalAccelerator::Accelerator.IpAddressType": {
      "AllowedValues": [
        "IPV4",
        "IPV6"
      ]
    },
    "AWS::GlobalAccelerator::Accelerator.IpAddresses": {
      "AllowedPatternRegex": "^(?:[0-9]{1,3}\\.){3}[0-9]{1,3}$"
    },
    "AWS::GlobalAccelerator::Accelerator.Name": {
      "AllowedPatternRegex": "^[a-zA-Z0-9_-]{0,64}$",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::GlobalAccelerator::EndpointGroup.HealthCheckPort": {
      "NumberMax": 65535,
      "NumberMin": -1
    },
    "AWS::GlobalAccelerator::EndpointGroup.HealthCheckProtocol": {
      "AllowedValues": [
        "TCP",
        "HTTP",
        "HTTPS"
      ]
    },
    "AWS::GlobalAccelerator::EndpointGroup.ListenerArn": {
      "AllowedPatternRegex": "^arn:aws:(\\w+)::(\\d{12}):(accelerator)/([0-9a-f-]+)/listener/([0-9a-f-]+)$"
    },
    "AWS::GlobalAccelerator::Listener.ClientAffinity": {
      "AllowedValues": [
        "NONE",
        "SOURCE_IP"
      ]
    },
    "AWS::GlobalAccelerator::Listener.Protocol": {
      "AllowedValues": [
        "TCP",
        "UDP"
      ]
    },
    "AWS::Glue::Connection.ConnectionInput.ConnectionType": {
      "AllowedValues": [
        "CUSTOM",
        "JDBC",
        "KAFKA",
        "MARKETPLACE",
        "MONGODB",
        "NETWORK",
        "SFTP"
      ]
    },
    "AWS::Glue::Crawler.SchemaChangePolicy.DeleteBehavior": {
      "AllowedValues": [
        "DELETE_FROM_DATABASE",
        "DEPRECATE_IN_DATABASE",
        "LOG"
      ]
    },
    "AWS::Glue::Crawler.SchemaChangePolicy.UpdateBehavior": {
      "AllowedValues": [
        "LOG",
        "UPDATE_IN_DATABASE"
      ]
    },
    "AWS::Glue::Job.NumberOfWorkers": {
      "NumberMax": 299,
      "NumberMin": 0
    },
    "AWS::Glue::MLTransform.MaxCapacity": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::Glue::Registry.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::Glue::Schema.Compatibility": {
      "AllowedValues": [
        "NONE",
        "DISABLED",
        "BACKWARD",
        "BACKWARD_ALL",
        "FORWARD",
        "FORWARD_ALL",
        "FULL",
        "FULL_ALL"
      ]
    },
    "AWS::Glue::Schema.DataFormat": {
      "AllowedValues": [
        "AVRO"
      ]
    },
    "AWS::Glue::Schema.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::Glue::Schema.Registry.Arn": {
      "AllowedPatternRegex": "arn:(aws|aws-us-gov|aws-cn):glue:.*"
    },
    "AWS::Glue::Schema.Registry.Name": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::Glue::Schema.SchemaVersion.VersionNumber": {
      "NumberMax": 100000,
      "NumberMin": 1
    },
    "AWS::Glue::SchemaVersion.Schema.RegistryName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::Glue::SchemaVersion.Schema.SchemaArn": {
      "AllowedPatternRegex": "arn:(aws|aws-us-gov|aws-cn):glue:.*"
    },
    "AWS::Glue::SchemaVersion.Schema.SchemaName": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::Glue::SchemaVersionMetadata.Key": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::Glue::SchemaVersionMetadata.SchemaVersionId": {
      "AllowedPatternRegex": "[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}"
    },
    "AWS::Glue::SchemaVersionMetadata.Value": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Glue::Table.TableInput.TableType": {
      "AllowedValues": [
        "EXTERNAL_TABLE",
        "VIRTUAL_VIEW"
      ]
    },
    "AWS::Glue::Trigger.Condition.LogicalOperator": {
      "AllowedValues": [
        "EQUALS"
      ]
    },
    "AWS::Glue::Trigger.Condition.State": {
      "AllowedValues": [
        "SUCCEEDED",
        "STOPPED",
        "TIMEOUT",
        "FAILED"
      ]
    },
    "AWS::Glue::Trigger.Predicate.Logical": {
      "AllowedValues": [
        "AND",
        "ANY"
      ]
    },
    "AWS::Glue::Trigger.Type": {
      "AllowedValues": [
        "CONDITIONAL",
        "ON_DEMAND",
        "SCHEDULED"
      ]
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaDeviceMount.Permission": {
      "AllowedValues": [
        "ro",
        "rw"
      ]
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaEventSource.Type": {
      "AllowedValues": [
        "PUB_SUB",
        "IOT_CORE"
      ]
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaExecutionParameters.InputPayloadEncodingType": {
      "AllowedValues": [
        "json",
        "binary"
      ]
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaFunctionRecipeSource.LambdaArn": {
      "AllowedPatternRegex": "^arn:aws(-(cn|us-gov))?:lambda:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$"
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaLinuxProcessParams.IsolationMode": {
      "AllowedValues": [
        "GreengrassContainer",
        "NoContainer"
      ]
    },
    "AWS::GreengrassV2::ComponentVersion.LambdaVolumeMount.Permission": {
      "AllowedValues": [
        "ro",
        "rw"
      ]
    },
    "AWS::GuardDuty::Detector.FindingPublishingFrequency": {
      "AllowedValues": [
        "FIFTEEN_MINUTES",
        "ONE_HOUR",
        "SIX_HOURS"
      ]
    },
    "AWS::GuardDuty::Filter.Action": {
      "AllowedValues": [
        "ARCHIVE",
        "NOOP"
      ]
    },
    "AWS::GuardDuty::IPSet.Format": {
      "AllowedValues": [
        "ALIEN_VAULT",
        "FIRE_EYE",
        "OTX_CSV",
        "PROOF_POINT",
        "STIX",
        "TXT"
      ]
    },
    "AWS::GuardDuty::Member.Status": {
      "AllowedValues": [
        "Created",
        "Disabled",
        "Enabled",
        "Invited",
        "Removed",
        "Resigned"
      ]
    },
    "AWS::GuardDuty::ThreatIntelSet.Format": {
      "AllowedValues": [
        "ALIEN_VAULT",
        "FIRE_EYE",
        "OTX_CSV",
        "PROOF_POINT",
        "STIX",
        "TXT"
      ]
    },
    "AWS::IAM::AccessKey.Active": {
      "AllowedValues": [
        "Active",
        "Inactive"
      ]
    },
    "AWS::IAM::AssumeRole.Document": {
      "JsonMax": 2048,
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::IAM::Group.Name": {
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::IAM::Group"
        ]
      }
    },
    "AWS::IAM::Group.Names": {
      "ListMax": 10,
      "ListMin": 0
    },
    "AWS::IAM::InstanceProfile.Arn": {
      "GetAtt": {
        "AWS::IAM::InstanceProfile": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::IAM::InstanceProfile.Name": {
      "AllowedPatternRegex": "[a-zA-Z0-9+=,.@\\-_]+",
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::IAM::InstanceProfile"
        ]
      }
    },
    "AWS::IAM::InstanceProfile.NameOrArn": {
      "GetAtt": {
        "AWS::IAM::InstanceProfile": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::IAM::InstanceProfile"
        ]
      }
    },
    "AWS::IAM::InstanceProfile.Role": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::IAM::Role"
        ]
      }
    },
    "AWS::IAM::InstanceProfile.Roles": {
      "ListMax": 1,
      "ListMin": 1
    },
    "AWS::IAM::ManagedPolicy.Arn": {
      "AllowedPatternRegex": "arn:(aws[a-zA-Z-]*)?:iam::(\\d{12}|aws):policy/[a-zA-Z_0-9+=,.@\\-_/]+",
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::IAM::ManagedPolicy"
        ]
      }
    },
    "AWS::IAM::ManagedPolicy.Arns": {
      "ListMax": 20,
      "ListMin": 0
    },
    "AWS::IAM::ManagedPolicy.PolicyDocument": {
      "JsonMax": 6144,
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::IAM::OIDCProvider.ClientIdList": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::IAM::OIDCProvider.ThumbprintList": {
      "AllowedPatternRegex": "[0-9A-Fa-f]{40}",
      "StringMax": 40,
      "StringMin": 40
    },
    "AWS::IAM::OIDCProvider.Url": {
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::IAM::Path.Path": {
      "AllowedPatternRegex": "^/(.+/)*$",
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::IAM::Policy.PolicyName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9+=,.@\\-_]+$",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IAM::Role.Arn": {
      "AllowedPatternRegex": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/[a-zA-Z_0-9+=,.@\\-_/]+",
      "GetAtt": {
        "AWS::IAM::Role": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::IAM::Role.MaxSessionDuration": {
      "NumberMax": 43200,
      "NumberMin": 3600
    },
    "AWS::IAM::Role.Name": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::IAM::Role"
        ]
      }
    },
    "AWS::IAM::Role.NameOrArn": {
      "GetAtt": {
        "AWS::IAM::Role": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::IAM::Role"
        ]
      }
    },
    "AWS::IAM::SAMLProvider.Name": {
      "AllowedPatternRegex": "[\\w._-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IAM::SAMLProvider.SamlMetadataDocument": {
      "StringMax": 10000000,
      "StringMin": 1000
    },
    "AWS::IAM::ServerCertificate.CertificateBody": {
      "AllowedPatternRegex": "[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+",
      "StringMax": 16384,
      "StringMin": 1
    },
    "AWS::IAM::ServerCertificate.CertificateChain": {
      "AllowedPatternRegex": "[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+",
      "StringMax": 2097152,
      "StringMin": 1
    },
    "AWS::IAM::ServerCertificate.Path": {
      "AllowedPatternRegex": "(\\u002F)|(\\u002F[\\u0021-\\u007F]+\\u002F)",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::IAM::ServerCertificate.PrivateKey": {
      "AllowedPatternRegex": "[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+",
      "StringMax": 16384,
      "StringMin": 1
    },
    "AWS::IAM::ServerCertificate.ServerCertificateName": {
      "AllowedPatternRegex": "[\\w+=,.@-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IAM::User.Arn": {
      "GetAtt": {
        "AWS::IAM::User": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "AWS::IAM::VirtualMFADevice.Path": {
      "AllowedPatternRegex": "(\\u002F)|(\\u002F[\\u0021-\\u007F]+\\u002F)",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::IAM::VirtualMFADevice.VirtualMfaDeviceName": {
      "AllowedPatternRegex": "[\\w+=,.@-]+",
      "StringMax": 226,
      "StringMin": 1
    },
    "AWS::ImageBuilder::Component.Data": {
      "StringMax": 16000,
      "StringMin": 1
    },
    "AWS::ImageBuilder::Component.Platform": {
      "AllowedValues": [
        "Windows",
        "Linux"
      ]
    },
    "AWS::ImageBuilder::ContainerRecipe.ContainerType": {
      "AllowedValues": [
        "DOCKER"
      ]
    },
    "AWS::ImageBuilder::ContainerRecipe.PlatformOverride": {
      "AllowedValues": [
        "Windows",
        "Linux"
      ]
    },
    "AWS::ImageBuilder::ContainerRecipe.TargetContainerRepository.Service": {
      "AllowedValues": [
        "ECR"
      ]
    },
    "AWS::ImageBuilder::Image.ImageTestsConfiguration.TimeoutMinutes": {
      "NumberMax": 1440,
      "NumberMin": 60
    },
    "AWS::ImageBuilder::ImagePipeline.ImageTestsConfiguration.TimeoutMinutes": {
      "NumberMax": 1440,
      "NumberMin": 60
    },
    "AWS::ImageBuilder::ImagePipeline.Schedule.PipelineExecutionStartCondition": {
      "AllowedValues": [
        "EXPRESSION_MATCH_ONLY",
        "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE"
      ]
    },
    "AWS::ImageBuilder::ImagePipeline.Status": {
      "AllowedValues": [
        "DISABLED",
        "ENABLED"
      ]
    },
    "AWS::ImageBuilder::ImageRecipe.EbsInstanceBlockDeviceSpecification.VolumeType": {
      "AllowedValues": [
        "standard",
        "io1",
        "io2",
        "gp2",
        "gp3",
        "sc1",
        "st1"
      ]
    },
    "AWS::Inspector::AssessmentTemplate.DurationInSeconds": {
      "NumberMax": 86400,
      "NumberMin": 180
    },
    "AWS::IoT::AccountAuditConfiguration.AccountId": {
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::IoT::AccountAuditConfiguration.AuditNotificationTarget.RoleArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::IoT::AccountAuditConfiguration.RoleArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::IoT::Authorizer.AuthorizerName": {
      "AllowedPatternRegex": "[\\w=,@-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::Authorizer.Status": {
      "AllowedValues": [
        "ACTIVE",
        "INACTIVE"
      ]
    },
    "AWS::IoT::Certificate.CACertificatePem": {
      "StringMax": 65536,
      "StringMin": 1
    },
    "AWS::IoT::Certificate.CertificateMode": {
      "AllowedValues": [
        "DEFAULT",
        "SNI_ONLY"
      ]
    },
    "AWS::IoT::Certificate.CertificatePem": {
      "StringMax": 65536,
      "StringMin": 1
    },
    "AWS::IoT::Certificate.Status": {
      "AllowedValues": [
        "ACTIVE",
        "INACTIVE",
        "REVOKED",
        "PENDING_TRANSFER",
        "PENDING_ACTIVATION"
      ]
    },
    "AWS::IoT::CustomMetric.MetricName": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::CustomMetric.MetricType": {
      "AllowedValues": [
        "string-list",
        "ip-address-list",
        "number-list",
        "number"
      ]
    },
    "AWS::IoT::Dimension.Name": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::Dimension.StringValues": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoT::Dimension.Type": {
      "AllowedValues": [
        "TOPIC_FILTER"
      ]
    },
    "AWS::IoT::MitigationAction.ActionName": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::MitigationAction.AddThingsToThingGroupParams.ThingGroupNames": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::MitigationAction.EnableIoTLoggingParams.LogLevel": {
      "AllowedValues": [
        "DEBUG",
        "INFO",
        "ERROR",
        "WARN"
      ]
    },
    "AWS::IoT::MitigationAction.EnableIoTLoggingParams.RoleArnForLogging": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::IoT::MitigationAction.PublishFindingToSnsParams.TopicArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::IoT::MitigationAction.ReplaceDefaultPolicyVersionParams.TemplateName": {
      "AllowedValues": [
        "BLANK_POLICY"
      ]
    },
    "AWS::IoT::MitigationAction.UpdateCACertificateParams.Action": {
      "AllowedValues": [
        "DEACTIVATE"
      ]
    },
    "AWS::IoT::MitigationAction.UpdateDeviceCertificateParams.Action": {
      "AllowedValues": [
        "DEACTIVATE"
      ]
    },
    "AWS::IoT::ProvisioningTemplate.TemplateName": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]+$",
      "StringMax": 36,
      "StringMin": 1
    },
    "AWS::IoT::ScheduledAudit.DayOfMonth": {
      "AllowedPatternRegex": "^([1-9]|[12][0-9]|3[01])$|^LAST$"
    },
    "AWS::IoT::ScheduledAudit.DayOfWeek": {
      "AllowedValues": [
        "SUN",
        "MON",
        "TUE",
        "WED",
        "THU",
        "FRI",
        "SAT"
      ]
    },
    "AWS::IoT::ScheduledAudit.Frequency": {
      "AllowedValues": [
        "DAILY",
        "WEEKLY",
        "BIWEEKLY",
        "MONTHLY"
      ]
    },
    "AWS::IoT::ScheduledAudit.ScheduledAuditName": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::SecurityProfile.Behavior.Metric": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::SecurityProfile.Behavior.Name": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::SecurityProfile.BehaviorCriteria.ComparisonOperator": {
      "AllowedValues": [
        "less-than",
        "less-than-equals",
        "greater-than",
        "greater-than-equals",
        "in-cidr-set",
        "not-in-cidr-set",
        "in-port-set",
        "not-in-port-set",
        "in-set",
        "not-in-set"
      ]
    },
    "AWS::IoT::SecurityProfile.BehaviorCriteria.ConsecutiveDatapointsToAlarm": {
      "NumberMax": 10,
      "NumberMin": 1
    },
    "AWS::IoT::SecurityProfile.BehaviorCriteria.ConsecutiveDatapointsToClear": {
      "NumberMax": 10,
      "NumberMin": 1
    },
    "AWS::IoT::SecurityProfile.MachineLearningDetectionConfig.ConfidenceLevel": {
      "AllowedValues": [
        "LOW",
        "MEDIUM",
        "HIGH"
      ]
    },
    "AWS::IoT::SecurityProfile.MetricDimension.DimensionName": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::SecurityProfile.MetricDimension.Operator": {
      "AllowedValues": [
        "IN",
        "NOT_IN"
      ]
    },
    "AWS::IoT::SecurityProfile.MetricToRetain.Metric": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::SecurityProfile.SecurityProfileName": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::IoT::SecurityProfile.StatisticalThreshold.Statistic": {
      "AllowedValues": [
        "Average",
        "p0",
        "p0.1",
        "p0.01",
        "p1",
        "p10",
        "p50",
        "p90",
        "p99",
        "p99.9",
        "p99.99",
        "p100"
      ]
    },
    "AWS::IoT::TopicRule.S3Action.CannedAcl": {
      "AllowedValues": [
        "private",
        "public-read",
        "public-read-write",
        "aws-exec-read",
        "authenticated-read",
        "bucket-owner-read",
        "bucket-owner-full-control",
        "log-delivery-write"
      ]
    },
    "AWS::IoT::TopicRuleDestination.Status": {
      "AllowedValues": [
        "ENABLED",
        "IN_PROGRESS",
        "DISABLED"
      ]
    },
    "AWS::IoTSiteWise::AccessPolicy.IamRole.arn": {
      "AllowedPatternRegex": ".*",
      "StringMax": 1600,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AccessPolicy.IamUser.arn": {
      "AllowedPatternRegex": ".*",
      "StringMax": 1600,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AccessPolicy.Portal.id": {
      "AllowedPatternRegex": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "AWS::IoTSiteWise::AccessPolicy.Project.id": {
      "AllowedPatternRegex": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "AWS::IoTSiteWise::AccessPolicy.User.id": {
      "AllowedPatternRegex": "\\S+"
    },
    "AWS::IoTSiteWise::Asset.AssetHierarchy.ChildAssetId": {
      "AllowedPatternRegex": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "AWS::IoTSiteWise::Asset.AssetHierarchy.LogicalId": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Asset.AssetModelId": {
      "AllowedPatternRegex": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "AWS::IoTSiteWise::Asset.AssetName": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Asset.AssetProperty.Alias": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 1000,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Asset.AssetProperty.LogicalId": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Asset.AssetProperty.NotificationState": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel.Description": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel.Name": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel.Type": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelDescription": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelHierarchy.ChildAssetModelId": {
      "AllowedPatternRegex": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelHierarchy.LogicalId": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelHierarchy.Name": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelName": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelProperty.DataType": {
      "AllowedValues": [
        "STRING",
        "INTEGER",
        "DOUBLE",
        "BOOLEAN",
        "STRUCT"
      ]
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelProperty.DataTypeSpec": {
      "AllowedValues": [
        "AWS/ALARM_STATE"
      ]
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelProperty.LogicalId": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelProperty.Name": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.AssetModelProperty.Unit": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.Attribute.DefaultValue": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.ExpressionVariable.Name": {
      "AllowedPatternRegex": "^[a-z][a-z0-9_]*$",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.Metric.Expression": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.PropertyType.TypeName": {
      "AllowedValues": [
        "Measurement",
        "Attribute",
        "Transform",
        "Metric"
      ]
    },
    "AWS::IoTSiteWise::AssetModel.Transform.Expression": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.TumblingWindow.Interval": {
      "AllowedValues": [
        "1w",
        "1d",
        "1h",
        "15m",
        "5m",
        "1m"
      ]
    },
    "AWS::IoTSiteWise::AssetModel.VariableValue.HierarchyLogicalId": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::AssetModel.VariableValue.PropertyLogicalId": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Dashboard.DashboardDefinition": {
      "AllowedPatternRegex": ".+"
    },
    "AWS::IoTSiteWise::Dashboard.DashboardDescription": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Dashboard.DashboardName": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Dashboard.ProjectId": {
      "AllowedPatternRegex": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
      "StringMax": 36,
      "StringMin": 36
    },
    "AWS::IoTSiteWise::Gateway.GatewayCapabilitySummary.CapabilityConfiguration": {
      "StringMax": 204800,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Gateway.GatewayCapabilitySummary.CapabilityNamespace": {
      "AllowedPatternRegex": "^[a-zA-Z]+:[a-zA-Z]+:[0-9]+$"
    },
    "AWS::IoTSiteWise::Gateway.GatewayName": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Gateway.Greengrass.GroupArn": {
      "StringMax": 1600,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Portal.PortalContactEmail": {
      "AllowedPatternRegex": "[^@]+@[^@]+",
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Portal.PortalDescription": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Portal.PortalName": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Portal.RoleArn": {
      "AllowedPatternRegex": ".*",
      "StringMax": 1600,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Project.PortalId": {
      "AllowedPatternRegex": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
      "StringMax": 36,
      "StringMin": 36
    },
    "AWS::IoTSiteWise::Project.ProjectDescription": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::IoTSiteWise::Project.ProjectName": {
      "AllowedPatternRegex": "[^\\u0000-\\u001F\\u007F]+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::KMS::Alias.AliasName": {
      "AllowedPatternRegex": "^(alias/)[a-zA-Z0-9:/_-]+$",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::KMS::Alias.TargetKeyId": {
      "GetAtt": {
        "AWS::KMS::Key": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::KMS::Key"
        ]
      },
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::KMS::Key.KeySpec": {
      "AllowedValues": [
        "SYMMETRIC_DEFAULT",
        "RSA_2048",
        "RSA_3072",
        "RSA_4096",
        "ECC_NIST_P256",
        "ECC_NIST_P384",
        "ECC_NIST_P521",
        "ECC_SECG_P256K1"
      ]
    },
    "AWS::KMS::Key.KeyUsage": {
      "AllowedValues": [
        "ENCRYPT_DECRYPT",
        "SIGN_VERIFY"
      ]
    },
    "AWS::KMS::Key.PendingWindowInDays": {
      "NumberMax": 30,
      "NumberMin": 7
    },
    "AWS::Kinesis::Stream.Name": {
      "AllowedPatternRegex": "^[a-zA-Z0-9_.-]+$",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::Kinesis::Stream.RetentionPeriodHours": {
      "NumberMax": 168,
      "NumberMin": 1
    },
    "AWS::Kinesis::Stream.ShardCount": {
      "NumberMax": 100000,
      "NumberMin": 1
    },
    "AWS::Kinesis::Stream.StreamEncryption.EncryptionType": {
      "AllowedValues": [
        "KMS"
      ]
    },
    "AWS::Kinesis::Stream.StreamEncryption.KeyId": {
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::KinesisAnalyticsV2::Application.RuntimeEnvironment": {
      "AllowedValues": [
        "FLINK-1_11",
        "FLINK-1_6",
        "FLINK-1_8",
        "SQL-1_0"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.CopyCommand.DataTableName": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamEncryptionConfigurationInput.KeyARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamEncryptionConfigurationInput.KeyType": {
      "AllowedValues": [
        "AWS_OWNED_CMK",
        "CUSTOMER_MANAGED_CMK"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamName": {
      "AllowedPatternRegex": "[a-zA-Z0-9._-]+",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.DeliveryStreamType": {
      "AllowedValues": [
        "DirectPut",
        "KinesisStreamAsSource"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.ClusterEndpoint": {
      "AllowedPatternRegex": "https:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.DomainARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.IndexName": {
      "StringMax": 80,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.IndexRotationPeriod": {
      "AllowedValues": [
        "NoRotation",
        "OneHour",
        "OneDay",
        "OneWeek",
        "OneMonth"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration.S3BackupMode": {
      "AllowedValues": [
        "FailedDocumentsOnly",
        "AllDocuments"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration.NoEncryptionConfig": {
      "AllowedValues": [
        "NoEncryption"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.BucketARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.CompressionFormat": {
      "AllowedValues": [
        "UNCOMPRESSED",
        "GZIP",
        "ZIP",
        "Snappy",
        "HADOOP_SNAPPY"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration.S3BackupMode": {
      "AllowedValues": [
        "Disabled",
        "Enabled"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointCommonAttribute.AttributeName": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointConfiguration.Name": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointConfiguration.Url": {
      "StringMax": 1000,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointDestinationConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.HttpEndpointRequestConfiguration.ContentEncoding": {
      "AllowedValues": [
        "NONE",
        "GZIP"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration.KinesisStreamARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.Processor.Type": {
      "AllowedValues": [
        "Lambda"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.ClusterJDBCURL": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.Password": {
      "StringMax": 512,
      "StringMin": 6
    },
    "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.S3BackupMode": {
      "AllowedValues": [
        "Disabled",
        "Enabled"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration.Username": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration.BucketARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration.CompressionFormat": {
      "AllowedValues": [
        "UNCOMPRESSED",
        "GZIP",
        "ZIP",
        "Snappy",
        "HADOOP_SNAPPY"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.SchemaConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration.HECAcknowledgmentTimeoutInSeconds": {
      "NumberMax": 600,
      "NumberMin": 180
    },
    "AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration.HECEndpointType": {
      "AllowedValues": [
        "Raw",
        "Event"
      ]
    },
    "AWS::KinesisFirehose::DeliveryStream.VpcConfiguration.RoleARN": {
      "AllowedPatternRegex": "arn:.*",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.VpcConfiguration.SecurityGroupIds": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::KinesisFirehose::DeliveryStream.VpcConfiguration.SubnetIds": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::Lambda::CodeSigningConfig.AllowedPublishers.SigningProfileVersionArns": {
      "AllowedPatternRegex": "arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)",
      "StringMax": 1024,
      "StringMin": 12
    },
    "AWS::Lambda::CodeSigningConfig.CodeSigningPolicies.UntrustedArtifactOnDeployment": {
      "AllowedValues": [
        "Warn",
        "Enforce"
      ]
    },
    "AWS::Lambda::EventSourceMapping.BatchSize": {
      "NumberMax": 10000,
      "NumberMin": 1
    },
    "AWS::Lambda::EventSourceMapping.Endpoints.KafkaBootstrapServers": {
      "AllowedPatternRegex": "^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\\-]*[A-Za-z0-9]):[0-9]{1,5}",
      "StringMax": 300,
      "StringMin": 1
    },
    "AWS::Lambda::EventSourceMapping.EventSourceArn": {
      "AllowedPatternRegex": "arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)",
      "GetAtt": {
        "AWS::DynamoDB::Table": "StreamArn",
        "AWS::Kinesis::Stream": "Arn",
        "AWS::Kinesis::StreamConsumer": [
          "StreamARN",
          "ConsumerARN"
        ],
        "AWS::SQS::Queue": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::MSK::Cluster"
        ]
      },
      "StringMax": 1024,
      "StringMin": 12
    },
    "AWS::Lambda::EventSourceMapping.FunctionName": {
      "AllowedPatternRegex": "(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?",
      "StringMax": 140,
      "StringMin": 1
    },
    "AWS::Lambda::EventSourceMapping.FunctionResponseTypes": {
      "AllowedValues": [
        "ReportBatchItemFailures"
      ]
    },
    "AWS::Lambda::EventSourceMapping.MaximumBatchingWindowInSeconds": {
      "NumberMax": 300,
      "NumberMin": 0
    },
    "AWS::Lambda::EventSourceMapping.MaximumRecordAgeInSeconds": {
      "NumberMax": 604800,
      "NumberMin": -1
    },
    "AWS::Lambda::EventSourceMapping.MaximumRetryAttempts": {
      "NumberMax": 10000,
      "NumberMin": -1
    },
    "AWS::Lambda::EventSourceMapping.OnFailure.Destination": {
      "AllowedPatternRegex": "arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)",
      "StringMax": 1024,
      "StringMin": 12
    },
    "AWS::Lambda::EventSourceMapping.ParallelizationFactor": {
      "NumberMax": 10,
      "NumberMin": 1
    },
    "AWS::Lambda::EventSourceMapping.Queues": {
      "AllowedPatternRegex": "[\\s\\S]*",
      "StringMax": 1000,
      "StringMin": 1
    },
    "AWS::Lambda::EventSourceMapping.SourceAccessConfiguration.Type": {
      "AllowedValues": [
        "BASIC_AUTH",
        "VPC_SUBNET",
        "VPC_SECURITY_GROUP",
        "SASL_SCRAM_512_AUTH",
        "SASL_SCRAM_256_AUTH"
      ]
    },
    "AWS::Lambda::EventSourceMapping.SourceAccessConfiguration.URI": {
      "AllowedPatternRegex": "[a-zA-Z0-9-\\/*:_+=.@-]*",
      "StringMax": 200,
      "StringMin": 1
    },
    "AWS::Lambda::EventSourceMapping.StartingPosition": {
      "AllowedPatternRegex": "(LATEST|TRIM_HORIZON)+",
      "AllowedValues": [
        "AT_TIMESTAMP",
        "LATEST",
        "TRIM_HORIZON"
      ],
      "StringMax": 12,
      "StringMin": 6
    },
    "AWS::Lambda::EventSourceMapping.Topics": {
      "AllowedPatternRegex": "^[^.]([a-zA-Z0-9\\-_.]+)",
      "StringMax": 249,
      "StringMin": 1
    },
    "AWS::Lambda::Function.MemorySize": {
      "NumberMax": 10240,
      "NumberMin": 128
    },
    "AWS::Lambda::Function.Timeout": {
      "NumberMax": 900,
      "NumberMin": 1
    },
    "AWS::LicenseManager::License.ProductSKU": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::Logs::LogGroup.KmsKeyId": {
      "AllowedPatternRegex": "^arn:[a-z0-9-]+:kms:[a-z0-9-]+:\\d{12}:(key|alias)/.+\\Z"
    },
    "AWS::Logs::LogGroup.LogGroupName": {
      "AllowedPatternRegex": "^[.\\-_/#A-Za-z0-9]{1,512}\\Z",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::Logs::LogGroup.Retention": {
      "AllowedValues": [
        "1",
        "3",
        "5",
        "7",
        "14",
        "30",
        "60",
        "90",
        "120",
        "150",
        "180",
        "365",
        "400",
        "545",
        "731",
        "1827",
        "3653"
      ]
    },
    "AWS::Logs::MetricFilter.MetricTransformation.MetricValue": {
      "AllowedPatternRegex": "^(([0-9]*)|(\\$.*))$"
    },
    "AWS::LookoutVision::Project.ProjectName": {
      "AllowedPatternRegex": "[a-zA-Z0-9][a-zA-Z0-9_\\-]*",
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::MWAA::Environment.AirflowVersion": {
      "AllowedPatternRegex": "^[0-9a-z.]+$"
    },
    "AWS::MWAA::Environment.DagS3Path": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::MWAA::Environment.EnvironmentClass": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::MWAA::Environment.ExecutionRoleArn": {
      "AllowedPatternRegex": "^arn:aws(-[a-z]+)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$"
    },
    "AWS::MWAA::Environment.KmsKey": {
      "AllowedPatternRegex": "^(((arn:aws(-[a-z]+)?:kms:[a-z]{2}-[a-z]+-\\d:\\d+:)?key\\/)?[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}|(arn:aws:kms:[a-z]{2}-[a-z]+-\\d:\\d+:)?alias/.+)$"
    },
    "AWS::MWAA::Environment.ModuleLoggingConfiguration.CloudWatchLogGroupArn": {
      "AllowedPatternRegex": "^arn:aws(-[a-z]+)?:logs:[a-z0-9\\-]+:\\d{12}:log-group:\\w+"
    },
    "AWS::MWAA::Environment.ModuleLoggingConfiguration.LogLevel": {
      "AllowedValues": [
        "CRITICAL",
        "ERROR",
        "WARNING",
        "INFO",
        "DEBUG"
      ]
    },
    "AWS::MWAA::Environment.Name": {
      "AllowedPatternRegex": "^[a-zA-Z][0-9a-zA-Z\\-_]*$",
      "StringMax": 80,
      "StringMin": 1
    },
    "AWS::MWAA::Environment.NetworkConfiguration.SecurityGroupIds": {
      "AllowedPatternRegex": "^sg-[a-zA-Z0-9\\-._]+$",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::MWAA::Environment.NetworkConfiguration.SubnetIds": {
      "AllowedPatternRegex": "^subnet-[a-zA-Z0-9\\-._]+$"
    },
    "AWS::MWAA::Environment.PluginsS3Path": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::MWAA::Environment.RequirementsS3Path": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::MWAA::Environment.SourceBucketArn": {
      "AllowedPatternRegex": "^arn:aws(-[a-z]+)?:s3:::[a-z0-9.\\-]+$",
      "StringMax": 1224,
      "StringMin": 1
    },
    "AWS::MWAA::Environment.WebserverAccessMode": {
      "AllowedValues": [
        "PRIVATE_ONLY",
        "PUBLIC_ONLY"
      ]
    },
    "AWS::MWAA::Environment.WeeklyMaintenanceWindowStart": {
      "AllowedPatternRegex": "(MON|TUE|WED|THU|FRI|SAT|SUN):([01]\\d|2[0-3]):(00|30)"
    },
    "AWS::Macie::FindingsFilter.Action": {
      "AllowedValues": [
        "ARCHIVE",
        "NOOP"
      ]
    },
    "AWS::Macie::Session.FindingPublishingFrequency": {
      "AllowedValues": [
        "FIFTEEN_MINUTES",
        "ONE_HOUR",
        "SIX_HOURS"
      ]
    },
    "AWS::Macie::Session.Status": {
      "AllowedValues": [
        "ENABLED",
        "PAUSED"
      ]
    },
    "AWS::MediaConnect::Flow.Encryption.Algorithm": {
      "AllowedValues": [
        "aes128",
        "aes192",
        "aes256"
      ]
    },
    "AWS::MediaConnect::Flow.Encryption.KeyType": {
      "AllowedValues": [
        "speke",
        "static-key"
      ]
    },
    "AWS::MediaConnect::Flow.FailoverConfig.State": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::MediaConnect::Flow.Source.Protocol": {
      "AllowedValues": [
        "zixi-push",
        "rtp-fec",
        "rtp",
        "rist"
      ]
    },
    "AWS::MediaConnect::FlowEntitlement.Encryption.Algorithm": {
      "AllowedValues": [
        "aes128",
        "aes192",
        "aes256"
      ]
    },
    "AWS::MediaConnect::FlowEntitlement.Encryption.KeyType": {
      "AllowedValues": [
        "speke",
        "static-key"
      ]
    },
    "AWS::MediaConnect::FlowEntitlement.EntitlementStatus": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::MediaConnect::FlowOutput.Encryption.Algorithm": {
      "AllowedValues": [
        "aes128",
        "aes192",
        "aes256"
      ]
    },
    "AWS::MediaConnect::FlowOutput.Encryption.KeyType": {
      "AllowedValues": [
        "static-key"
      ]
    },
    "AWS::MediaConnect::FlowOutput.Protocol": {
      "AllowedValues": [
        "zixi-push",
        "rtp-fec",
        "rtp",
        "zixi-pull",
        "rist"
      ]
    },
    "AWS::MediaConnect::FlowSource.Encryption.Algorithm": {
      "AllowedValues": [
        "aes128",
        "aes192",
        "aes256"
      ]
    },
    "AWS::MediaConnect::FlowSource.Encryption.KeyType": {
      "AllowedValues": [
        "speke",
        "static-key"
      ]
    },
    "AWS::MediaConnect::FlowSource.Protocol": {
      "AllowedValues": [
        "zixi-push",
        "rtp-fec",
        "rtp",
        "rist"
      ]
    },
    "AWS::MediaPackage::Channel.Id": {
      "AllowedPatternRegex": "\\A[0-9a-zA-Z-_]+\\Z",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::MediaPackage::OriginEndpoint.DashPackage.AdTriggers": {
      "AllowedValues": [
        "SPLICE_INSERT",
        "BREAK",
        "PROVIDER_ADVERTISEMENT",
        "DISTRIBUTOR_ADVERTISEMENT",
        "PROVIDER_PLACEMENT_OPPORTUNITY",
        "DISTRIBUTOR_PLACEMENT_OPPORTUNITY",
        "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY",
        "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.DashPackage.AdsOnDeliveryRestrictions": {
      "AllowedValues": [
        "NONE",
        "RESTRICTED",
        "UNRESTRICTED",
        "BOTH"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.DashPackage.ManifestLayout": {
      "AllowedValues": [
        "FULL",
        "COMPACT"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.DashPackage.PeriodTriggers": {
      "AllowedValues": [
        "ADS"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.DashPackage.Profile": {
      "AllowedValues": [
        "NONE",
        "HBBTV_1_5"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.DashPackage.SegmentTemplateFormat": {
      "AllowedValues": [
        "NUMBER_WITH_TIMELINE",
        "TIME_WITH_TIMELINE",
        "NUMBER_WITH_DURATION"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsEncryption.EncryptionMethod": {
      "AllowedValues": [
        "AES_128",
        "SAMPLE_AES"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsManifest.AdMarkers": {
      "AllowedValues": [
        "NONE",
        "SCTE35_ENHANCED",
        "PASSTHROUGH",
        "DATERANGE"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsManifest.AdTriggers": {
      "AllowedValues": [
        "SPLICE_INSERT",
        "BREAK",
        "PROVIDER_ADVERTISEMENT",
        "DISTRIBUTOR_ADVERTISEMENT",
        "PROVIDER_PLACEMENT_OPPORTUNITY",
        "DISTRIBUTOR_PLACEMENT_OPPORTUNITY",
        "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY",
        "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsManifest.AdsOnDeliveryRestrictions": {
      "AllowedValues": [
        "NONE",
        "RESTRICTED",
        "UNRESTRICTED",
        "BOTH"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsManifest.PlaylistType": {
      "AllowedValues": [
        "NONE",
        "EVENT",
        "VOD"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsPackage.AdMarkers": {
      "AllowedValues": [
        "NONE",
        "SCTE35_ENHANCED",
        "PASSTHROUGH",
        "DATERANGE"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsPackage.AdTriggers": {
      "AllowedValues": [
        "SPLICE_INSERT",
        "BREAK",
        "PROVIDER_ADVERTISEMENT",
        "DISTRIBUTOR_ADVERTISEMENT",
        "PROVIDER_PLACEMENT_OPPORTUNITY",
        "DISTRIBUTOR_PLACEMENT_OPPORTUNITY",
        "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY",
        "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsPackage.AdsOnDeliveryRestrictions": {
      "AllowedValues": [
        "NONE",
        "RESTRICTED",
        "UNRESTRICTED",
        "BOTH"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.HlsPackage.PlaylistType": {
      "AllowedValues": [
        "NONE",
        "EVENT",
        "VOD"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.Id": {
      "AllowedPatternRegex": "\\A[0-9a-zA-Z-_]+\\Z",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::MediaPackage::OriginEndpoint.Origination": {
      "AllowedValues": [
        "ALLOW",
        "DENY"
      ]
    },
    "AWS::MediaPackage::OriginEndpoint.StreamSelection.StreamOrder": {
      "AllowedValues": [
        "ORIGINAL",
        "VIDEO_BITRATE_ASCENDING",
        "VIDEO_BITRATE_DESCENDING"
      ]
    },
    "AWS::MediaPackage::PackagingConfiguration.DashManifest.ManifestLayout": {
      "AllowedValues": [
        "FULL",
        "COMPACT"
      ]
    },
    "AWS::MediaPackage::PackagingConfiguration.DashManifest.Profile": {
      "AllowedValues": [
        "NONE",
        "HBBTV_1_5"
      ]
    },
    "AWS::MediaPackage::PackagingConfiguration.DashPackage.SegmentTemplateFormat": {
      "AllowedValues": [
        "NUMBER_WITH_TIMELINE",
        "TIME_WITH_TIMELINE",
        "NUMBER_WITH_DURATION"
      ]
    },
    "AWS::MediaPackage::PackagingConfiguration.HlsEncryption.EncryptionMethod": {
      "AllowedValues": [
        "AES_128",
        "SAMPLE_AES"
      ]
    },
    "AWS::MediaPackage::PackagingConfiguration.HlsManifest.AdMarkers": {
      "AllowedValues": [
        "NONE",
        "SCTE35_ENHANCED",
        "PASSTHROUGH"
      ]
    },
    "AWS::MediaPackage::PackagingConfiguration.StreamSelection.StreamOrder": {
      "AllowedValues": [
        "ORIGINAL",
        "VIDEO_BITRATE_ASCENDING",
        "VIDEO_BITRATE_DESCENDING"
      ]
    },
    "AWS::MediaPackage::PackagingGroup.Id": {
      "AllowedPatternRegex": "\\A[0-9a-zA-Z-_]+\\Z",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::OpsWorksCM::Server.BackupId": {
      "AllowedPatternRegex": "[a-zA-Z][a-zA-Z0-9\\-\\.\\:]*"
    },
    "AWS::OpsWorksCM::Server.CustomCertificate": {
      "AllowedPatternRegex": "(?s)\\s*-----BEGIN CERTIFICATE-----.+-----END CERTIFICATE-----\\s*"
    },
    "AWS::OpsWorksCM::Server.CustomDomain": {
      "AllowedPatternRegex": "^(((?!-)[A-Za-z0-9-]{0,62}[A-Za-z0-9])\\.)+((?!-)[A-Za-z0-9-]{1,62}[A-Za-z0-9])$"
    },
    "AWS::OpsWorksCM::Server.EngineAttribute.Name": {
      "AllowedPatternRegex": "(?s).*"
    },
    "AWS::OpsWorksCM::Server.EngineAttribute.Value": {
      "AllowedPatternRegex": "(?s).*"
    },
    "AWS::OpsWorksCM::Server.InstanceProfileArn": {
      "AllowedPatternRegex": "arn:aws:iam::[0-9]{12}:instance-profile/.*"
    },
    "AWS::OpsWorksCM::Server.KeyPair": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::OpsWorksCM::Server.PreferredBackupWindow": {
      "AllowedPatternRegex": "^((Mon|Tue|Wed|Thu|Fri|Sat|Sun):)?([0-1][0-9]|2[0-3]):[0-5][0-9]$"
    },
    "AWS::OpsWorksCM::Server.PreferredMaintenanceWindow": {
      "AllowedPatternRegex": "^((Mon|Tue|Wed|Thu|Fri|Sat|Sun):)?([0-1][0-9]|2[0-3]):[0-5][0-9]$"
    },
    "AWS::OpsWorksCM::Server.ServerName": {
      "AllowedPatternRegex": "[a-zA-Z][a-zA-Z0-9\\-]*",
      "StringMax": 40,
      "StringMin": 1
    },
    "AWS::OpsWorksCM::Server.ServiceRoleArn": {
      "AllowedPatternRegex": "arn:aws:iam::[0-9]{12}:role/.*"
    },
    "AWS::QLDB::Stream.KinesisConfiguration.StreamArn": {
      "AllowedPatternRegex": "arn:[\\w+=/,.@-]+:[\\w+=/,.@-]+:[\\w+=/,.@-]*:[0-9]*:[\\w+=,.@-]+(/[\\w+=,.@-]+)*"
    },
    "AWS::QLDB::Stream.RoleArn": {
      "AllowedPatternRegex": "arn:[\\w+=/,.@-]+:[\\w+=/,.@-]+:[\\w+=/,.@-]*:[0-9]*:[\\w+=,.@-]+(/[\\w+=,.@-]+)*"
    },
    "AWS::QuickSight::Analysis.AnalysisError.Message": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Analysis.AnalysisError.Type": {
      "AllowedValues": [
        "ACCESS_DENIED",
        "SOURCE_NOT_FOUND",
        "DATA_SET_NOT_FOUND",
        "INTERNAL_FAILURE",
        "PARAMETER_VALUE_INCOMPATIBLE",
        "PARAMETER_TYPE_INVALID",
        "PARAMETER_NOT_FOUND",
        "COLUMN_TYPE_MISMATCH",
        "COLUMN_GEOGRAPHIC_ROLE_MISMATCH",
        "COLUMN_REPLACEMENT_MISSING"
      ]
    },
    "AWS::QuickSight::Analysis.AnalysisId": {
      "AllowedPatternRegex": "[\\w\\-]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Analysis.AwsAccountId": {
      "AllowedPatternRegex": "^[0-9]{12}$",
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::QuickSight::Analysis.DataSetReference.DataSetPlaceholder": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Analysis.DateTimeParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Analysis.DecimalParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Analysis.IntegerParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Analysis.Name": {
      "AllowedPatternRegex": "[\\u0020-\\u00FF]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Analysis.ResourcePermission.Principal": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::QuickSight::Analysis.Sheet.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Analysis.Sheet.SheetId": {
      "AllowedPatternRegex": "[\\w\\-]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Analysis.StringParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Dashboard.AdHocFilteringOption.AvailabilityStatus": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::QuickSight::Dashboard.AwsAccountId": {
      "AllowedPatternRegex": "^[0-9]{12}$",
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::QuickSight::Dashboard.DashboardId": {
      "AllowedPatternRegex": "[\\w\\-]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Dashboard.DataSetReference.DataSetPlaceholder": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Dashboard.DateTimeParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Dashboard.DecimalParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Dashboard.ExportToCSVOption.AvailabilityStatus": {
      "AllowedValues": [
        "ENABLED",
        "DISABLED"
      ]
    },
    "AWS::QuickSight::Dashboard.IntegerParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Dashboard.Name": {
      "AllowedPatternRegex": "[\\u0020-\\u00FF]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Dashboard.ResourcePermission.Principal": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::QuickSight::Dashboard.SheetControlsOption.VisibilityState": {
      "AllowedValues": [
        "EXPANDED",
        "COLLAPSED"
      ]
    },
    "AWS::QuickSight::Dashboard.StringParameter.Name": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Dashboard.VersionDescription": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::QuickSight::Template.AwsAccountId": {
      "AllowedPatternRegex": "^[0-9]{12}$",
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::QuickSight::Template.DataSetReference.DataSetPlaceholder": {
      "AllowedPatternRegex": ".*\\S.*"
    },
    "AWS::QuickSight::Template.Name": {
      "AllowedPatternRegex": "[\\u0020-\\u00FF]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Template.ResourcePermission.Principal": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::QuickSight::Template.TemplateId": {
      "AllowedPatternRegex": "[\\w\\-]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Template.VersionDescription": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::QuickSight::Theme.AwsAccountId": {
      "AllowedPatternRegex": "^[0-9]{12}$",
      "StringMax": 12,
      "StringMin": 12
    },
    "AWS::QuickSight::Theme.BaseThemeId": {
      "AllowedPatternRegex": "[\\w\\-]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Theme.DataColorPalette.Colors": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.DataColorPalette.EmptyFillColor": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.DataColorPalette.MinMaxGradient": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.Name": {
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Theme.ResourcePermission.Principal": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::QuickSight::Theme.ThemeId": {
      "AllowedPatternRegex": "[\\w\\-]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::QuickSight::Theme.UIColorPalette.Accent": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.AccentForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.Danger": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.DangerForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.Dimension": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.DimensionForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.Measure": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.MeasureForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.PrimaryBackground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.PrimaryForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.SecondaryBackground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.SecondaryForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.Success": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.SuccessForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.Warning": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.UIColorPalette.WarningForeground": {
      "AllowedPatternRegex": "^#[A-F0-9]{6}$"
    },
    "AWS::QuickSight::Theme.VersionDescription": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::RDS::DBCluster.BackupRetentionPeriod": {
      "NumberMax": 35,
      "NumberMin": 1
    },
    "AWS::RDS::DBInstance.BackupRetentionPeriod": {
      "NumberMax": 35,
      "NumberMin": 0
    },
    "AWS::RDS::DBInstance.DBInstanceClass": {
      "AllowedValues": [
        "db.m3.2xlarge",
        "db.m3.large",
        "db.m3.medium",
        "db.m3.xlarge",
        "db.m4.10xlarge",
        "db.m4.16xlarge",
        "db.m4.2xlarge",
        "db.m4.4xlarge",
        "db.m4.large",
        "db.m4.xlarge",
        "db.m5.12xlarge",
        "db.m5.16xlarge",
        "db.m5.24xlarge",
        "db.m5.2xlarge",
        "db.m5.4xlarge",
        "db.m5.8xlarge",
        "db.m5.large",
        "db.m5.xlarge",
        "db.m5d.12xlarge",
        "db.m5d.16xlarge",
        "db.m5d.24xlarge",
        "db.m5d.2xlarge",
        "db.m5d.4xlarge",
        "db.m5d.8xlarge",
        "db.m5d.large",
        "db.m5d.xlarge",
        "db.m6g.12xlarge",
        "db.m6g.16xlarge",
        "db.m6g.2xlarge",
        "db.m6g.4xlarge",
        "db.m6g.8xlarge",
        "db.m6g.large",
        "db.m6g.xlarge",
        "db.r3.2xlarge",
        "db.r3.4xlarge",
        "db.r3.8xlarge",
        "db.r3.large",
        "db.r3.xlarge",
        "db.r4.16xlarge",
        "db.r4.2xlarge",
        "db.r4.4xlarge",
        "db.r4.8xlarge",
        "db.r4.large",
        "db.r4.xlarge",
        "db.r5.12xlarge",
        "db.r5.16xlarge",
        "db.r5.24xlarge",
        "db.r5.2xlarge",
        "db.r5.4xlarge",
        "db.r5.8xlarge",
        "db.r5.large",
        "db.r5.xlarge",
        "db.r5b.12xlarge",
        "db.r5b.16xlarge",
        "db.r5b.24xlarge",
        "db.r5b.2xlarge",
        "db.r5b.4xlarge",
        "db.r5b.8xlarge",
        "db.r5b.large",
        "db.r5b.xlarge",
        "db.r5d.12xlarge",
        "db.r5d.16xlarge",
        "db.r5d.24xlarge",
        "db.r5d.2xlarge",
        "db.r5d.4xlarge",
        "db.r5d.8xlarge",
        "db.r5d.large",
        "db.r5d.xlarge",
        "db.r6g.12xlarge",
        "db.r6g.16xlarge",
        "db.r6g.2xlarge",
        "db.r6g.4xlarge",
        "db.r6g.8xlarge",
        "db.r6g.large",
        "db.r6g.xlarge",
        "db.t2.2xlarge",
        "db.t2.large",
        "db.t2.medium",
        "db.t2.micro",
        "db.t2.small",
        "db.t2.xlarge",
        "db.t3.2xlarge",
        "db.t3.large",
        "db.t3.medium",
        "db.t3.micro",
        "db.t3.small",
        "db.t3.xlarge",
        "db.x1.16xlarge",
        "db.x1.32xlarge",
        "db.x1e.16xlarge",
        "db.x1e.2xlarge",
        "db.x1e.32xlarge",
        "db.x1e.4xlarge",
        "db.x1e.8xlarge",
        "db.x1e.xlarge",
        "db.z1d.12xlarge",
        "db.z1d.2xlarge",
        "db.z1d.3xlarge",
        "db.z1d.6xlarge",
        "db.z1d.large",
        "db.z1d.xlarge"
      ]
    },
    "AWS::RDS::DBInstance.Engine": {
      "AllowedPattern": "Has to be one of [aurora, aurora-mysql, aurora-postgresql, mariadb, mysql, oracle-ee, oracle-se2, oracle-se1, oracle-se, postgres, sqlserver-ee, sqlserver-se, sqlserver-ex, sqlserver-web]",
      "AllowedPatternRegex": "(?i)(aurora|aurora-mysql|aurora-postgresql|mariadb|mysql|oracle-ee|oracle-se2|oracle-se1|oracle-se|postgres|sqlserver-ee|sqlserver-se|sqlserver-ex|sqlserver-web)$"
    },
    "AWS::RDS::DBInstance.PromotionTier": {
      "NumberMax": 15,
      "NumberMin": 0
    },
    "AWS::RDS::DBProxy.AuthFormat.AuthScheme": {
      "AllowedValues": [
        "SECRETS"
      ]
    },
    "AWS::RDS::DBProxy.AuthFormat.IAMAuth": {
      "AllowedValues": [
        "DISABLED",
        "REQUIRED"
      ]
    },
    "AWS::RDS::DBProxy.DBProxyName": {
      "AllowedPatternRegex": "[0-z]*"
    },
    "AWS::RDS::DBProxy.EngineFamily": {
      "AllowedValues": [
        "MYSQL",
        "POSTGRESQL"
      ]
    },
    "AWS::RDS::DBProxy.TagFormat.Key": {
      "AllowedPatternRegex": "(\\w|\\d|\\s|\\\\|-|\\.:=+-)*"
    },
    "AWS::RDS::DBProxy.TagFormat.Value": {
      "AllowedPatternRegex": "(\\w|\\d|\\s|\\\\|-|\\.:=+-)*"
    },
    "AWS::RDS::DBProxyTargetGroup.DBProxyName": {
      "AllowedPatternRegex": "[A-z][0-z]*"
    },
    "AWS::RDS::DBProxyTargetGroup.TargetGroupName": {
      "AllowedValues": [
        "default"
      ]
    },
    "AWS::RDS::GlobalCluster.Engine": {
      "AllowedValues": [
        "aurora",
        "aurora-mysql",
        "aurora-postgresql"
      ]
    },
    "AWS::RDS::GlobalCluster.GlobalClusterIdentifier": {
      "AllowedPatternRegex": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$"
    },
    "AWS::Redshift::Cluster.NumberOfNodes": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::ResourceGroups::Group.ResourceQuery.Type": {
      "AllowedValues": [
        "TAG_FILTERS_1_0",
        "CLOUDFORMATION_STACK_1_0"
      ]
    },
    "AWS::Route53::DNSSEC.HostedZoneId": {
      "AllowedPatternRegex": "^[A-Z0-9]{1,32}$"
    },
    "AWS::Route53::HealthCheck.AlarmIdentifier.Name": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Route53::HealthCheck.HealthCheckConfig.FailureThreshold": {
      "NumberMax": 10,
      "NumberMin": 1
    },
    "AWS::Route53::HealthCheck.HealthCheckConfig.IPAddress": {
      "AllowedPatternRegex": "^((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))$|^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$"
    },
    "AWS::Route53::HealthCheck.HealthCheckConfig.InsufficientDataHealthStatus": {
      "AllowedValues": [
        "Healthy",
        "LastKnownStatus",
        "Unhealthy"
      ]
    },
    "AWS::Route53::HealthCheck.HealthCheckConfig.Port": {
      "NumberMax": 65535,
      "NumberMin": 1
    },
    "AWS::Route53::HealthCheck.HealthCheckConfig.RequestInterval": {
      "NumberMax": 30,
      "NumberMin": 10
    },
    "AWS::Route53::HealthCheck.HealthCheckConfig.Type": {
      "AllowedValues": [
        "CALCULATED",
        "CLOUDWATCH_METRIC",
        "HTTP",
        "HTTP_STR_MATCH",
        "HTTPS",
        "HTTPS_STR_MATCH",
        "TCP"
      ]
    },
    "AWS::Route53::KeySigningKey.HostedZoneId": {
      "AllowedPatternRegex": "^[A-Z0-9]{1,32}$"
    },
    "AWS::Route53::KeySigningKey.KeyManagementServiceArn": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Route53::KeySigningKey.Name": {
      "AllowedPatternRegex": "^[a-zA-Z0-9_]{3,128}$"
    },
    "AWS::Route53::KeySigningKey.Status": {
      "AllowedValues": [
        "ACTIVE",
        "INACTIVE"
      ]
    },
    "AWS::Route53Resolver::ResolverDNSSECConfig.ResourceId": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::Route53Resolver::ResolverQueryLoggingConfig.DestinationArn": {
      "StringMax": 600,
      "StringMin": 1
    },
    "AWS::Route53Resolver::ResolverQueryLoggingConfig.Name": {
      "AllowedPatternRegex": "(?!^[0-9]+$)([a-zA-Z0-9\\-_' ']+)",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation.ResolverQueryLogConfigId": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation.ResourceId": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::S3::AccessPoint.Bucket": {
      "StringMax": 255,
      "StringMin": 3
    },
    "AWS::S3::AccessPoint.Name": {
      "AllowedPatternRegex": "^[a-z0-9]([a-z0-9\\-]*[a-z0-9])?$",
      "StringMax": 50,
      "StringMin": 3
    },
    "AWS::S3::AccessPoint.VpcConfiguration.VpcId": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::S3::Bucket.BucketName": {
      "AllowedPatternRegex": "^[a-z0-9][a-z0-9.-]*[a-z0-9]$",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::S3::StorageLens.S3BucketDestination.Format": {
      "AllowedValues": [
        "CSV",
        "Parquet"
      ]
    },
    "AWS::S3::StorageLens.S3BucketDestination.OutputSchemaVersion": {
      "AllowedValues": [
        "V_1"
      ]
    },
    "AWS::S3::StorageLens.StorageLensConfiguration.Id": {
      "AllowedPatternRegex": "^[a-zA-Z0-9\\-_.]+$",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::S3Outposts::AccessPoint.Bucket": {
      "AllowedPatternRegex": "^arn:[^:]+:s3-outposts:[a-zA-Z0-9\\-]+:\\d{12}:outpost\\/[^:]+\\/bucket\\/[^:]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::S3Outposts::AccessPoint.Name": {
      "AllowedPatternRegex": "^[a-z0-9]([a-z0-9\\\\-]*[a-z0-9])?$",
      "StringMax": 50,
      "StringMin": 3
    },
    "AWS::S3Outposts::AccessPoint.VpcConfiguration.VpcId": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::S3Outposts::Bucket.BucketName": {
      "AllowedPatternRegex": "(?=^.{3,63}$)(?!^(\\d+\\.)+\\d+$)(^(([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])\\.)*([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])$)",
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::S3Outposts::Bucket.OutpostId": {
      "AllowedPatternRegex": "^(op-[a-f0-9]{17}|\\d{12}|ec2)$"
    },
    "AWS::S3Outposts::Bucket.Rule.ExpirationDate": {
      "AllowedPatternRegex": "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$"
    },
    "AWS::S3Outposts::Bucket.Rule.Status": {
      "AllowedValues": [
        "Enabled",
        "Disabled"
      ]
    },
    "AWS::S3Outposts::BucketPolicy.Bucket": {
      "AllowedPatternRegex": "^arn:[^:]+:s3-outposts:[a-zA-Z0-9\\-]+:\\d{12}:outpost\\/[^:]+\\/bucket\\/[^:]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::S3Outposts::Endpoint.NetworkInterface.NetworkInterfaceId": {
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::S3Outposts::Endpoint.OutpostId": {
      "AllowedPatternRegex": "^(op-[a-f0-9]{17}|\\d{12}|ec2)$"
    },
    "AWS::S3Outposts::Endpoint.SecurityGroupId": {
      "AllowedPatternRegex": "^sg-([0-9a-f]{8}|[0-9a-f]{17})$",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::S3Outposts::Endpoint.SubnetId": {
      "AllowedPatternRegex": "^subnet-([0-9a-f]{8}|[0-9a-f]{17})$",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::SES::ConfigurationSet.Name": {
      "AllowedPatternRegex": "^[a-zA-Z0-9_-]{1,64}$",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SQS::Queue.DelaySeconds": {
      "NumberMax": 900,
      "NumberMin": 0
    },
    "AWS::SQS::Queue.KmsDataKeyReusePeriodSeconds": {
      "NumberMax": 86400,
      "NumberMin": 60
    },
    "AWS::SQS::Queue.MaximumMessageSize": {
      "NumberMax": 262144,
      "NumberMin": 1024
    },
    "AWS::SQS::Queue.MessageRetentionPeriod": {
      "NumberMax": 1209600,
      "NumberMin": 60
    },
    "AWS::SQS::Queue.ReceiveMessageWaitTimeSeconds": {
      "NumberMax": 20,
      "NumberMin": 0
    },
    "AWS::SQS::Queue.VisibilityTimeout": {
      "NumberMax": 43200,
      "NumberMin": 0
    },
    "AWS::SSM::Association.AssociationName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9_\\-.]{3,128}$"
    },
    "AWS::SSM::Association.AutomationTargetParameterName": {
      "StringMax": 50,
      "StringMin": 1
    },
    "AWS::SSM::Association.ComplianceSeverity": {
      "AllowedValues": [
        "CRITICAL",
        "HIGH",
        "MEDIUM",
        "LOW",
        "UNSPECIFIED"
      ]
    },
    "AWS::SSM::Association.DocumentVersion": {
      "AllowedPatternRegex": "([$]LATEST|[$]DEFAULT|^[1-9][0-9]*$)"
    },
    "AWS::SSM::Association.InstanceId": {
      "AllowedPatternRegex": "(^i-(\\w{8}|\\w{17})$)|(^mi-\\w{17}$)"
    },
    "AWS::SSM::Association.MaxConcurrency": {
      "AllowedPatternRegex": "^([1-9][0-9]*|[1-9][0-9]%|[1-9]%|100%)$",
      "StringMax": 7,
      "StringMin": 1
    },
    "AWS::SSM::Association.MaxErrors": {
      "AllowedPatternRegex": "^([1-9][0-9]*|[0]|[1-9][0-9]%|[0-9]%|100%)$",
      "StringMax": 7,
      "StringMin": 1
    },
    "AWS::SSM::Association.Name": {
      "AllowedPatternRegex": "^[a-zA-Z0-9_\\-.:/]{3,200}$"
    },
    "AWS::SSM::Association.S3OutputLocation.OutputS3BucketName": {
      "StringMax": 63,
      "StringMin": 3
    },
    "AWS::SSM::Association.S3OutputLocation.OutputS3Region": {
      "StringMax": 20,
      "StringMin": 3
    },
    "AWS::SSM::Association.ScheduleExpression": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SSM::Association.SyncCompliance": {
      "AllowedValues": [
        "AUTO",
        "MANUAL"
      ]
    },
    "AWS::SSM::Association.WaitForSuccessTimeoutSeconds": {
      "NumberMax": 172800,
      "NumberMin": 15
    },
    "AWS::SSM::MaintenanceWindow.Cutoff": {
      "NumberMax": 23,
      "NumberMin": 0
    },
    "AWS::SSM::MaintenanceWindow.Duration": {
      "NumberMax": 24,
      "NumberMin": 1
    },
    "AWS::SSM::ResourceDataSync.AwsOrganizationsSource.OrganizationSourceType": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.BucketName": {
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.BucketRegion": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.S3Destination.BucketName": {
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.S3Destination.BucketPrefix": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.S3Destination.BucketRegion": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.S3Destination.KMSKeyArn": {
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.S3Destination.SyncFormat": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.SyncName": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.SyncSource.SourceType": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SSM::ResourceDataSync.SyncType": {
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SSO::Assignment.InstanceArn": {
      "AllowedPatternRegex": "arn:aws:sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}",
      "StringMax": 1224,
      "StringMin": 10
    },
    "AWS::SSO::Assignment.PermissionSetArn": {
      "AllowedPatternRegex": "arn:aws:sso:::permissionSet/(sso)?ins-[a-zA-Z0-9-.]{16}/ps-[a-zA-Z0-9-./]{16}",
      "StringMax": 1224,
      "StringMin": 10
    },
    "AWS::SSO::Assignment.PrincipalId": {
      "AllowedPatternRegex": "^([0-9a-f]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$",
      "StringMax": 47,
      "StringMin": 1
    },
    "AWS::SSO::Assignment.PrincipalType": {
      "AllowedValues": [
        "USER",
        "GROUP"
      ]
    },
    "AWS::SSO::Assignment.TargetId": {
      "AllowedPatternRegex": "\\d{12}"
    },
    "AWS::SSO::Assignment.TargetType": {
      "AllowedValues": [
        "AWS_ACCOUNT"
      ]
    },
    "AWS::SSO::InstanceAccessControlAttributeConfiguration.InstanceArn": {
      "AllowedPatternRegex": "arn:aws:sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}",
      "StringMax": 1224,
      "StringMin": 10
    },
    "AWS::SSO::PermissionSet.InstanceArn": {
      "AllowedPatternRegex": "arn:aws:sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}",
      "StringMax": 1224,
      "StringMin": 10
    },
    "AWS::SSO::PermissionSet.ManagedPolicies": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SSO::PermissionSet.Name": {
      "AllowedPatternRegex": "[\\w+=,.@-]+",
      "StringMax": 32,
      "StringMin": 1
    },
    "AWS::SSO::PermissionSet.RelayStateType": {
      "AllowedPatternRegex": "[a-zA-Z0-9&amp;$@#\\/%?=~\\-_'&quot;|!:,.;*+\\[\\]\\ \\(\\)\\{\\}]+",
      "StringMax": 240,
      "StringMin": 1
    },
    "AWS::SSO::PermissionSet.SessionDuration": {
      "AllowedPatternRegex": "^(-?)P(?=\\d|T\\d)(?:(\\d+)Y)?(?:(\\d+)M)?(?:(\\d+)([DW]))?(?:T(?:(\\d+)H)?(?:(\\d+)M)?(?:(\\d+(?:\\.\\d+)?)S)?)?$",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::SageMaker::App.AppName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::App.AppType": {
      "AllowedValues": [
        "JupyterServer",
        "KernelGateway"
      ]
    },
    "AWS::SageMaker::App.DomainId": {
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::App.ResourceSpec.InstanceType": {
      "AllowedValues": [
        "system",
        "ml.t3.micro",
        "ml.t3.small",
        "ml.t3.medium",
        "ml.t3.large",
        "ml.t3.xlarge",
        "ml.t3.2xlarge",
        "ml.m5.large",
        "ml.m5.xlarge",
        "ml.m5.2xlarge",
        "ml.m5.4xlarge",
        "ml.m5.8xlarge",
        "ml.m5.12xlarge",
        "ml.m5.16xlarge",
        "ml.m5.24xlarge",
        "ml.c5.large",
        "ml.c5.xlarge",
        "ml.c5.2xlarge",
        "ml.c5.4xlarge",
        "ml.c5.9xlarge",
        "ml.c5.12xlarge",
        "ml.c5.18xlarge",
        "ml.c5.24xlarge",
        "ml.p3.2xlarge",
        "ml.p3.8xlarge",
        "ml.p3.16xlarge",
        "ml.g4dn.xlarge",
        "ml.g4dn.2xlarge",
        "ml.g4dn.4xlarge",
        "ml.g4dn.8xlarge",
        "ml.g4dn.12xlarge",
        "ml.g4dn.16xlarge"
      ]
    },
    "AWS::SageMaker::App.ResourceSpec.SageMakerImageArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::App.ResourceSpec.SageMakerImageVersionArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::App.UserProfileName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::AppImageConfig.AppImageConfigName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::AppImageConfig.FileSystemConfig.MountPath": {
      "AllowedPatternRegex": "^/.*",
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::SageMaker::AppImageConfig.KernelSpec.DisplayName": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::SageMaker::AppImageConfig.KernelSpec.Name": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::SageMaker::DataQualityJobDefinition.ClusterConfig.InstanceCount": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::SageMaker::DataQualityJobDefinition.ClusterConfig.VolumeSizeInGB": {
      "NumberMax": 16384,
      "NumberMin": 1
    },
    "AWS::SageMaker::DataQualityJobDefinition.ConstraintsResource.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.ContainerArguments": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.ContainerEntrypoint": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.ImageUri": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.PostAnalyticsProcessorSourceUri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityAppSpecification.RecordPreprocessorSourceUri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::DataQualityJobDefinition.DataQualityBaselineConfig.BaseliningJobName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.EndpointName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.S3DataDistributionType": {
      "AllowedValues": [
        "FullyReplicated",
        "ShardedByS3Key"
      ]
    },
    "AWS::SageMaker::DataQualityJobDefinition.EndpointInput.S3InputMode": {
      "AllowedValues": [
        "Pipe",
        "File"
      ]
    },
    "AWS::SageMaker::DataQualityJobDefinition.JobDefinitionName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
    },
    "AWS::SageMaker::DataQualityJobDefinition.MonitoringOutputConfig.KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::DataQualityJobDefinition.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::DataQualityJobDefinition.S3Output.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::DataQualityJobDefinition.S3Output.S3UploadMode": {
      "AllowedValues": [
        "Continuous",
        "EndOfJob"
      ]
    },
    "AWS::SageMaker::DataQualityJobDefinition.S3Output.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::DataQualityJobDefinition.StatisticsResource.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::DataQualityJobDefinition.StoppingCondition.MaxRuntimeInSeconds": {
      "NumberMax": 86400,
      "NumberMin": 1
    },
    "AWS::SageMaker::DataQualityJobDefinition.VpcConfig.SecurityGroupIds": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::DataQualityJobDefinition.VpcConfig.Subnets": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::Device.Device.Description": {
      "AllowedPatternRegex": "[\\S\\s]+",
      "StringMax": 40,
      "StringMin": 1
    },
    "AWS::SageMaker::Device.Device.DeviceName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::Device.Device.IotThingName": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+"
    },
    "AWS::SageMaker::Device.DeviceFleetName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*_*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::DeviceFleet.Description": {
      "AllowedPatternRegex": "[\\S\\s]+"
    },
    "AWS::SageMaker::DeviceFleet.DeviceFleetName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*_*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::DeviceFleet.EdgeOutputConfig.KmsKeyId": {
      "AllowedPatternRegex": "[a-zA-Z0-9:_-]+",
      "StringMax": 2048,
      "StringMin": 1
    },
    "AWS::SageMaker::DeviceFleet.EdgeOutputConfig.S3OutputLocation": {
      "AllowedPatternRegex": "^s3://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::DeviceFleet.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::Domain.AppNetworkAccessType": {
      "AllowedValues": [
        "PublicInternetOnly",
        "VpcOnly"
      ]
    },
    "AWS::SageMaker::Domain.AuthMode": {
      "AllowedValues": [
        "SSO",
        "IAM"
      ]
    },
    "AWS::SageMaker::Domain.CustomImage.AppImageConfigName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}"
    },
    "AWS::SageMaker::Domain.CustomImage.ImageName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$"
    },
    "AWS::SageMaker::Domain.DomainName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}"
    },
    "AWS::SageMaker::Domain.KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::Domain.ResourceSpec.InstanceType": {
      "AllowedValues": [
        "system",
        "ml.t3.micro",
        "ml.t3.small",
        "ml.t3.medium",
        "ml.t3.large",
        "ml.t3.xlarge",
        "ml.t3.2xlarge",
        "ml.m5.large",
        "ml.m5.xlarge",
        "ml.m5.2xlarge",
        "ml.m5.4xlarge",
        "ml.m5.8xlarge",
        "ml.m5.12xlarge",
        "ml.m5.16xlarge",
        "ml.m5.24xlarge",
        "ml.c5.large",
        "ml.c5.xlarge",
        "ml.c5.2xlarge",
        "ml.c5.4xlarge",
        "ml.c5.9xlarge",
        "ml.c5.12xlarge",
        "ml.c5.18xlarge",
        "ml.c5.24xlarge",
        "ml.p3.2xlarge",
        "ml.p3.8xlarge",
        "ml.p3.16xlarge",
        "ml.g4dn.xlarge",
        "ml.g4dn.2xlarge",
        "ml.g4dn.4xlarge",
        "ml.g4dn.8xlarge",
        "ml.g4dn.12xlarge",
        "ml.g4dn.16xlarge"
      ]
    },
    "AWS::SageMaker::Domain.ResourceSpec.SageMakerImageArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$"
    },
    "AWS::SageMaker::Domain.ResourceSpec.SageMakerImageVersionArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$"
    },
    "AWS::SageMaker::Domain.SharingSettings.NotebookOutputOption": {
      "AllowedValues": [
        "Allowed",
        "Disabled"
      ]
    },
    "AWS::SageMaker::Domain.SharingSettings.S3KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::Domain.SharingSettings.S3OutputPath": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::Domain.SubnetIds": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::Domain.UserSettings.ExecutionRole": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::Domain.UserSettings.SecurityGroups": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::Domain.VpcId": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::FeatureGroup.EventTimeFeatureName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,63}",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SageMaker::FeatureGroup.FeatureDefinition.FeatureName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,63}",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SageMaker::FeatureGroup.FeatureDefinition.FeatureType": {
      "AllowedValues": [
        "Integral",
        "Fractional",
        "String"
      ]
    },
    "AWS::SageMaker::FeatureGroup.FeatureGroupName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,63}",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SageMaker::FeatureGroup.RecordIdentifierFeatureName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,63}",
      "StringMax": 64,
      "StringMin": 1
    },
    "AWS::SageMaker::FeatureGroup.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::Image.ImageDescription": {
      "AllowedPatternRegex": ".+",
      "StringMax": 512,
      "StringMin": 1
    },
    "AWS::SageMaker::Image.ImageDisplayName": {
      "AllowedPatternRegex": "^[A-Za-z0-9 -_]+$",
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::SageMaker::Image.ImageName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::Image.ImageRoleArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*$",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::ImageVersion.BaseImage": {
      "AllowedPatternRegex": ".+",
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::SageMaker::ImageVersion.ImageName": {
      "AllowedPatternRegex": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig.InstanceCount": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig.VolumeSizeInGB": {
      "NumberMax": 16384,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.EndTimeOffset": {
      "AllowedPatternRegex": "^.?P.*",
      "StringMax": 15,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.EndpointName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.S3DataDistributionType": {
      "AllowedValues": [
        "FullyReplicated",
        "ShardedByS3Key"
      ]
    },
    "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.S3InputMode": {
      "AllowedValues": [
        "Pipe",
        "File"
      ]
    },
    "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput.StartTimeOffset": {
      "AllowedPatternRegex": "^.?P.*",
      "StringMax": 15,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelBiasJobDefinition.JobDefinitionName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification.ConfigUri": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification.ImageUri": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig.BaseliningJobName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig.KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::ModelBiasJobDefinition.S3Output.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.S3Output.S3UploadMode": {
      "AllowedValues": [
        "Continuous",
        "EndOfJob"
      ]
    },
    "AWS::SageMaker::ModelBiasJobDefinition.S3Output.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition.MaxRuntimeInSeconds": {
      "NumberMax": 86400,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig.SecurityGroupIds": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig.Subnets": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ClusterConfig.InstanceCount": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ClusterConfig.VolumeSizeInGB": {
      "NumberMax": 16384,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ConstraintsResource.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.EndpointName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.S3DataDistributionType": {
      "AllowedValues": [
        "FullyReplicated",
        "ShardedByS3Key"
      ]
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.EndpointInput.S3InputMode": {
      "AllowedValues": [
        "Pipe",
        "File"
      ]
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.JobDefinitionName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityAppSpecification.ConfigUri": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityAppSpecification.ImageUri": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.ModelExplainabilityBaselineConfig.BaseliningJobName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.MonitoringOutputConfig.KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.S3Output.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.S3Output.S3UploadMode": {
      "AllowedValues": [
        "Continuous",
        "EndOfJob"
      ]
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.S3Output.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.StoppingCondition.MaxRuntimeInSeconds": {
      "NumberMax": 86400,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.VpcConfig.SecurityGroupIds": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::ModelExplainabilityJobDefinition.VpcConfig.Subnets": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::ModelPackageGroup.ModelPackageGroupName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ClusterConfig.InstanceCount": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ClusterConfig.VolumeSizeInGB": {
      "NumberMax": 16384,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ConstraintsResource.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.EndTimeOffset": {
      "AllowedPatternRegex": "^.?P.*",
      "StringMax": 15,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.EndpointName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.S3DataDistributionType": {
      "AllowedValues": [
        "FullyReplicated",
        "ShardedByS3Key"
      ]
    },
    "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.S3InputMode": {
      "AllowedValues": [
        "Pipe",
        "File"
      ]
    },
    "AWS::SageMaker::ModelQualityJobDefinition.EndpointInput.StartTimeOffset": {
      "AllowedPatternRegex": "^.?P.*",
      "StringMax": 15,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.JobDefinitionName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ContainerArguments": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ContainerEntrypoint": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ImageUri": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.PostAnalyticsProcessorSourceUri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.ProblemType": {
      "AllowedValues": [
        "BinaryClassification",
        "MulticlassClassification",
        "Regression"
      ]
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityAppSpecification.RecordPreprocessorSourceUri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.ModelQualityBaselineConfig.BaseliningJobName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.MonitoringGroundTruthS3Input.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.MonitoringOutputConfig.KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::ModelQualityJobDefinition.S3Output.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.S3Output.S3UploadMode": {
      "AllowedValues": [
        "Continuous",
        "EndOfJob"
      ]
    },
    "AWS::SageMaker::ModelQualityJobDefinition.S3Output.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.StoppingCondition.MaxRuntimeInSeconds": {
      "NumberMax": 86400,
      "NumberMin": 1
    },
    "AWS::SageMaker::ModelQualityJobDefinition.VpcConfig.SecurityGroupIds": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::ModelQualityJobDefinition.VpcConfig.Subnets": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::MonitoringSchedule.ClusterConfig.InstanceCount": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.ClusterConfig.VolumeSizeInGB": {
      "NumberMax": 16384,
      "NumberMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.ConstraintsResource.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::MonitoringSchedule.EndpointInput.EndpointName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "AWS::SageMaker::MonitoringSchedule.EndpointInput.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::MonitoringSchedule.EndpointInput.S3DataDistributionType": {
      "AllowedValues": [
        "FullyReplicated",
        "ShardedByS3Key"
      ]
    },
    "AWS::SageMaker::MonitoringSchedule.EndpointInput.S3InputMode": {
      "AllowedValues": [
        "Pipe",
        "File"
      ]
    },
    "AWS::SageMaker::MonitoringSchedule.EndpointName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "AWS::SageMaker::MonitoringSchedule.FailureReason": {
      "StringMax": 1024,
      "StringMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.ContainerArguments": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.ContainerEntrypoint": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.ImageUri": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.PostAnalyticsProcessorSourceUri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringAppSpecification.RecordPreprocessorSourceUri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.EndpointName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.MonitoringExecutionStatus": {
      "AllowedValues": [
        "Pending",
        "Completed",
        "CompletedWithViolations",
        "InProgress",
        "Failed",
        "Stopping",
        "Stopped"
      ]
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.MonitoringScheduleName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringExecutionSummary.ProcessingJobArn": {
      "AllowedPatternRegex": "aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:processing-job/.*"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringJobDefinition.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringOutputConfig.KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleConfig.MonitoringJobDefinitionName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$",
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleConfig.MonitoringType": {
      "AllowedValues": [
        "DataQuality",
        "ModelQuality",
        "ModelBias",
        "ModelExplainability"
      ]
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
    },
    "AWS::SageMaker::MonitoringSchedule.MonitoringScheduleStatus": {
      "AllowedValues": [
        "Pending",
        "Failed",
        "Scheduled",
        "Stopped"
      ]
    },
    "AWS::SageMaker::MonitoringSchedule.S3Output.LocalPath": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::MonitoringSchedule.S3Output.S3UploadMode": {
      "AllowedValues": [
        "Continuous",
        "EndOfJob"
      ]
    },
    "AWS::SageMaker::MonitoringSchedule.S3Output.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::MonitoringSchedule.ScheduleConfig.ScheduleExpression": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.StatisticsResource.S3Uri": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::MonitoringSchedule.StoppingCondition.MaxRuntimeInSeconds": {
      "NumberMax": 86400,
      "NumberMin": 1
    },
    "AWS::SageMaker::MonitoringSchedule.VpcConfig.SecurityGroupIds": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::MonitoringSchedule.VpcConfig.Subnets": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::SageMaker::NotebookInstance.VolumeSizeInGB": {
      "NumberMax": 16384,
      "NumberMin": 5
    },
    "AWS::SageMaker::Pipeline.PipelineDisplayName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::Pipeline.PipelineName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::Pipeline.RoleArn": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::Project.ProjectDescription": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::Project.ProjectName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$",
      "StringMax": 32,
      "StringMin": 1
    },
    "AWS::SageMaker::UserProfile.CustomImage.AppImageConfigName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}"
    },
    "AWS::SageMaker::UserProfile.CustomImage.ImageName": {
      "AllowedPatternRegex": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$"
    },
    "AWS::SageMaker::UserProfile.DomainId": {
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::UserProfile.ResourceSpec.InstanceType": {
      "AllowedValues": [
        "system",
        "ml.t3.micro",
        "ml.t3.small",
        "ml.t3.medium",
        "ml.t3.large",
        "ml.t3.xlarge",
        "ml.t3.2xlarge",
        "ml.m5.large",
        "ml.m5.xlarge",
        "ml.m5.2xlarge",
        "ml.m5.4xlarge",
        "ml.m5.8xlarge",
        "ml.m5.12xlarge",
        "ml.m5.16xlarge",
        "ml.m5.24xlarge",
        "ml.c5.large",
        "ml.c5.xlarge",
        "ml.c5.2xlarge",
        "ml.c5.4xlarge",
        "ml.c5.9xlarge",
        "ml.c5.12xlarge",
        "ml.c5.18xlarge",
        "ml.c5.24xlarge",
        "ml.p3.2xlarge",
        "ml.p3.8xlarge",
        "ml.p3.16xlarge",
        "ml.g4dn.xlarge",
        "ml.g4dn.2xlarge",
        "ml.g4dn.4xlarge",
        "ml.g4dn.8xlarge",
        "ml.g4dn.12xlarge",
        "ml.g4dn.16xlarge"
      ]
    },
    "AWS::SageMaker::UserProfile.ResourceSpec.SageMakerImageArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$"
    },
    "AWS::SageMaker::UserProfile.ResourceSpec.SageMakerImageVersionArn": {
      "AllowedPatternRegex": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$"
    },
    "AWS::SageMaker::UserProfile.SharingSettings.NotebookOutputOption": {
      "AllowedValues": [
        "Allowed",
        "Disabled"
      ]
    },
    "AWS::SageMaker::UserProfile.SharingSettings.S3KmsKeyId": {
      "AllowedPatternRegex": ".*"
    },
    "AWS::SageMaker::UserProfile.SharingSettings.S3OutputPath": {
      "AllowedPatternRegex": "^(https|s3)://([^/]+)/?(.*)$"
    },
    "AWS::SageMaker::UserProfile.SingleSignOnUserIdentifier": {
      "AllowedPatternRegex": "UserName"
    },
    "AWS::SageMaker::UserProfile.SingleSignOnUserValue": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::SageMaker::UserProfile.UserProfileName": {
      "StringMax": 63,
      "StringMin": 1
    },
    "AWS::SageMaker::UserProfile.UserSettings.ExecutionRole": {
      "AllowedPatternRegex": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$",
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::SageMaker::UserProfile.UserSettings.SecurityGroups": {
      "AllowedPatternRegex": "[-0-9a-zA-Z]+"
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.AcceptLanguage": {
      "AllowedValues": [
        "en",
        "jp",
        "zh"
      ]
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.PathId": {
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.PathName": {
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProductId": {
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProductName": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisionedProductName": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningArtifactId": {
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter.Key": {
      "StringMax": 1000,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetAccounts": {
      "AllowedPatternRegex": "^[0-9]{12}$"
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetMaxConcurrencyPercentage": {
      "NumberMax": 100,
      "NumberMin": 1
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetOperationType": {
      "AllowedValues": [
        "CREATE",
        "UPDATE",
        "DELETE"
      ]
    },
    "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences.StackSetRegions": {
      "AllowedPatternRegex": "^[a-z]{2}-([a-z]+-)+[1-9]"
    },
    "AWS::ServiceCatalog::ServiceAction.AcceptLanguage": {
      "AllowedValues": [
        "en",
        "jp",
        "zh"
      ]
    },
    "AWS::ServiceCatalog::ServiceAction.DefinitionParameter.Key": {
      "StringMax": 1000,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::ServiceAction.DefinitionType": {
      "AllowedValues": [
        "SSM_AUTOMATION"
      ]
    },
    "AWS::ServiceCatalog::ServiceAction.Name": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::ServiceActionAssociation.ProductId": {
      "AllowedPatternRegex": "^[a-zA-Z0-9][a-zA-Z0-9_-]{1,99}\\Z",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::ServiceActionAssociation.ProvisioningArtifactId": {
      "AllowedPatternRegex": "^[a-zA-Z0-9][a-zA-Z0-9_-]{1,99}\\Z",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::ServiceCatalog::ServiceActionAssociation.ServiceActionId": {
      "AllowedPatternRegex": "^[a-zA-Z0-9][a-zA-Z0-9_-]{1,99}\\Z",
      "StringMax": 100,
      "StringMin": 1
    },
    "AWS::ServiceCatalogAppRegistry::Application.Name": {
      "AllowedPatternRegex": "\\w+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::ServiceCatalogAppRegistry::AttributeGroup.Name": {
      "AllowedPatternRegex": "\\w+",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.Application": {
      "AllowedPatternRegex": "\\w+|[a-z0-9]{12}",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.AttributeGroup": {
      "AllowedPatternRegex": "\\w+|[a-z0-9]{12}",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::ServiceCatalogAppRegistry::ResourceAssociation.Application": {
      "AllowedPatternRegex": "\\w+|[a-z0-9]{12}",
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::ServiceCatalogAppRegistry::ResourceAssociation.Resource": {
      "AllowedPatternRegex": "\\w+|arn:aws[-a-z]*:cloudformation:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:stack/[a-zA-Z][-A-Za-z0-9]{0,127}/[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}"
    },
    "AWS::ServiceCatalogAppRegistry::ResourceAssociation.ResourceType": {
      "AllowedValues": [
        "CFN_STACK"
      ]
    },
    "AWS::Signer::ProfilePermission.ProfileVersion": {
      "AllowedPatternRegex": "^[0-9a-zA-Z]{10}$"
    },
    "AWS::Signer::SigningProfile.PlatformId": {
      "AllowedValues": [
        "AWSLambda-SHA384-ECDSA"
      ]
    },
    "AWS::Signer::SigningProfile.SignatureValidityPeriod.Type": {
      "AllowedValues": [
        "DAYS",
        "MONTHS",
        "YEARS"
      ]
    },
    "AWS::StepFunctions::StateMachine.CloudWatchLogsLogGroup.LogGroupArn": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::StepFunctions::StateMachine.DefinitionString": {
      "StringMax": 1048576,
      "StringMin": 1
    },
    "AWS::StepFunctions::StateMachine.LoggingConfiguration.Level": {
      "AllowedValues": [
        "ALL",
        "ERROR",
        "FATAL",
        "OFF"
      ]
    },
    "AWS::StepFunctions::StateMachine.RoleArn": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::StepFunctions::StateMachine.StateMachineName": {
      "StringMax": 80,
      "StringMin": 1
    },
    "AWS::StepFunctions::StateMachine.StateMachineType": {
      "AllowedValues": [
        "STANDARD",
        "EXPRESS"
      ]
    },
    "AWS::StepFunctions::StateMachine.TagsEntry.Key": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::StepFunctions::StateMachine.TagsEntry.Value": {
      "StringMax": 256,
      "StringMin": 1
    },
    "AWS::Synthetics::Canary.ArtifactS3Location": {
      "AllowedPatternRegex": "^(s3|S3)://"
    },
    "AWS::Synthetics::Canary.Name": {
      "AllowedPatternRegex": "^[0-9a-z_\\-]{1,21}$"
    },
    "AWS::WAFv2::IPSet.Addresses": {
      "StringMax": 50,
      "StringMin": 1
    },
    "AWS::WAFv2::IPSet.Description": {
      "AllowedPatternRegex": "^[a-zA-Z0-9=:#@/\\-,.][a-zA-Z0-9+=:#@/\\-,.\\s]+[a-zA-Z0-9+=:#@/\\-,.]{1,256}$"
    },
    "AWS::WAFv2::IPSet.IPAddressVersion": {
      "AllowedValues": [
        "IPV4",
        "IPV6"
      ]
    },
    "AWS::WAFv2::IPSet.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::IPSet.Scope": {
      "AllowedValues": [
        "CLOUDFRONT",
        "REGIONAL"
      ]
    },
    "AWS::WAFv2::RegexPatternSet.Description": {
      "AllowedPatternRegex": "^[a-zA-Z0-9=:#@/\\-,.][a-zA-Z0-9+=:#@/\\-,.\\s]+[a-zA-Z0-9+=:#@/\\-,.]{1,256}$"
    },
    "AWS::WAFv2::RegexPatternSet.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::RegexPatternSet.Scope": {
      "AllowedValues": [
        "CLOUDFRONT",
        "REGIONAL"
      ]
    },
    "AWS::WAFv2::RuleGroup.ByteMatchStatement.PositionalConstraint": {
      "AllowedValues": [
        "EXACTLY",
        "STARTS_WITH",
        "ENDS_WITH",
        "CONTAINS",
        "CONTAINS_WORD"
      ]
    },
    "AWS::WAFv2::RuleGroup.Description": {
      "AllowedPatternRegex": "^[a-zA-Z0-9=:#@/\\-,.][a-zA-Z0-9+=:#@/\\-,.\\s]+[a-zA-Z0-9+=:#@/\\-,.]{1,256}$"
    },
    "AWS::WAFv2::RuleGroup.ForwardedIPConfiguration.FallbackBehavior": {
      "AllowedValues": [
        "MATCH",
        "NO_MATCH"
      ]
    },
    "AWS::WAFv2::RuleGroup.GeoMatchStatement.CountryCodes": {
      "StringMax": 2,
      "StringMin": 1
    },
    "AWS::WAFv2::RuleGroup.IPSetForwardedIPConfiguration.FallbackBehavior": {
      "AllowedValues": [
        "MATCH",
        "NO_MATCH"
      ]
    },
    "AWS::WAFv2::RuleGroup.IPSetForwardedIPConfiguration.Position": {
      "AllowedValues": [
        "FIRST",
        "LAST",
        "ANY"
      ]
    },
    "AWS::WAFv2::RuleGroup.IPSetReferenceStatement.Arn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::WAFv2::RuleGroup.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::RuleGroup.RateBasedStatementOne.AggregateKeyType": {
      "AllowedValues": [
        "IP",
        "FORWARDED_IP"
      ]
    },
    "AWS::WAFv2::RuleGroup.RateBasedStatementOne.Limit": {
      "NumberMax": 2000000000,
      "NumberMin": 100
    },
    "AWS::WAFv2::RuleGroup.RateBasedStatementTwo.AggregateKeyType": {
      "AllowedValues": [
        "IP",
        "FORWARDED_IP"
      ]
    },
    "AWS::WAFv2::RuleGroup.RateBasedStatementTwo.Limit": {
      "NumberMax": 2000000000,
      "NumberMin": 100
    },
    "AWS::WAFv2::RuleGroup.RegexPatternSetReferenceStatement.Arn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::WAFv2::RuleGroup.Rule.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::RuleGroup.Scope": {
      "AllowedValues": [
        "CLOUDFRONT",
        "REGIONAL"
      ]
    },
    "AWS::WAFv2::RuleGroup.SizeConstraintStatement.ComparisonOperator": {
      "AllowedValues": [
        "EQ",
        "NE",
        "LE",
        "LT",
        "GE",
        "GT"
      ]
    },
    "AWS::WAFv2::RuleGroup.TextTransformation.Type": {
      "AllowedValues": [
        "NONE",
        "COMPRESS_WHITE_SPACE",
        "HTML_ENTITY_DECODE",
        "LOWERCASE",
        "CMD_LINE",
        "URL_DECODE"
      ]
    },
    "AWS::WAFv2::RuleGroup.VisibilityConfig.MetricName": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::WAFv2::WebACL.ByteMatchStatement.PositionalConstraint": {
      "AllowedValues": [
        "EXACTLY",
        "STARTS_WITH",
        "ENDS_WITH",
        "CONTAINS",
        "CONTAINS_WORD"
      ]
    },
    "AWS::WAFv2::WebACL.Description": {
      "AllowedPatternRegex": "^[a-zA-Z0-9=:#@/\\-,.][a-zA-Z0-9+=:#@/\\-,.\\s]+[a-zA-Z0-9+=:#@/\\-,.]{1,256}$"
    },
    "AWS::WAFv2::WebACL.ExcludedRule.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::WebACL.ForwardedIPConfiguration.FallbackBehavior": {
      "AllowedValues": [
        "MATCH",
        "NO_MATCH"
      ]
    },
    "AWS::WAFv2::WebACL.GeoMatchStatement.CountryCodes": {
      "StringMax": 2,
      "StringMin": 1
    },
    "AWS::WAFv2::WebACL.IPSetForwardedIPConfiguration.FallbackBehavior": {
      "AllowedValues": [
        "MATCH",
        "NO_MATCH"
      ]
    },
    "AWS::WAFv2::WebACL.IPSetForwardedIPConfiguration.Position": {
      "AllowedValues": [
        "FIRST",
        "LAST",
        "ANY"
      ]
    },
    "AWS::WAFv2::WebACL.IPSetReferenceStatement.Arn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::WAFv2::WebACL.ManagedRuleGroupStatement.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::WebACL.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::WebACL.RateBasedStatementOne.AggregateKeyType": {
      "AllowedValues": [
        "IP",
        "FORWARDED_IP"
      ]
    },
    "AWS::WAFv2::WebACL.RateBasedStatementOne.Limit": {
      "NumberMax": 2000000000,
      "NumberMin": 100
    },
    "AWS::WAFv2::WebACL.RateBasedStatementTwo.AggregateKeyType": {
      "AllowedValues": [
        "IP",
        "FORWARDED_IP"
      ]
    },
    "AWS::WAFv2::WebACL.RateBasedStatementTwo.Limit": {
      "NumberMax": 2000000000,
      "NumberMin": 100
    },
    "AWS::WAFv2::WebACL.RegexPatternSetReferenceStatement.Arn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::WAFv2::WebACL.Rule.Name": {
      "AllowedPatternRegex": "^[0-9A-Za-z_-]{1,128}$"
    },
    "AWS::WAFv2::WebACL.RuleGroupReferenceStatement.Arn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::WAFv2::WebACL.Scope": {
      "AllowedValues": [
        "CLOUDFRONT",
        "REGIONAL"
      ]
    },
    "AWS::WAFv2::WebACL.SizeConstraintStatement.ComparisonOperator": {
      "AllowedValues": [
        "EQ",
        "NE",
        "LE",
        "LT",
        "GE",
        "GT"
      ]
    },
    "AWS::WAFv2::WebACL.TextTransformation.Type": {
      "AllowedValues": [
        "NONE",
        "COMPRESS_WHITE_SPACE",
        "HTML_ENTITY_DECODE",
        "LOWERCASE",
        "CMD_LINE",
        "URL_DECODE"
      ]
    },
    "AWS::WAFv2::WebACL.VisibilityConfig.MetricName": {
      "StringMax": 128,
      "StringMin": 1
    },
    "AWS::WAFv2::WebACLAssociation.ResourceArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::WAFv2::WebACLAssociation.WebACLArn": {
      "StringMax": 2048,
      "StringMin": 20
    },
    "AWS::WorkSpaces::ConnectionAlias.ConnectionAliasAssociation.AssociationStatus": {
      "AllowedValues": [
        "NOT_ASSOCIATED",
        "PENDING_ASSOCIATION",
        "ASSOCIATED_WITH_OWNER_ACCOUNT",
        "ASSOCIATED_WITH_SHARED_ACCOUNT",
        "PENDING_DISASSOCIATION"
      ]
    },
    "AWS::WorkSpaces::ConnectionAlias.ConnectionAliasAssociation.ConnectionIdentifier": {
      "AllowedPatternRegex": "^[a-zA-Z0-9]+$",
      "StringMax": 20,
      "StringMin": 1
    },
    "AWS::WorkSpaces::ConnectionAlias.ConnectionAliasAssociation.ResourceId": {
      "AllowedPatternRegex": ".+",
      "StringMax": 1000,
      "StringMin": 1
    },
    "AWS::WorkSpaces::ConnectionAlias.ConnectionString": {
      "AllowedPatternRegex": "^[.0-9a-zA-Z\\-]{1,255}$",
      "StringMax": 255,
      "StringMin": 1
    },
    "AWS::WorkSpaces::Workspace.ComputeTypeName": {
      "AllowedValues": [
        "GRAPHICS",
        "GRAPHICSPRO",
        "PERFORMANCE",
        "POWER",
        "POWERPRO",
        "STANDARD",
        "VALUE"
      ]
    },
    "AWS::WorkSpaces::Workspace.RunningMode": {
      "AllowedValues": [
        "ALWAYS_ON",
        "AUTO_STOP"
      ]
    },
    "AppStreamInstanceType": {
      "AllowedValues": [
        "stream.compute.2xlarge",
        "stream.compute.4xlarge",
        "stream.compute.8xlarge",
        "stream.compute.large",
        "stream.compute.xlarge",
        "stream.graphics-design.2xlarge",
        "stream.graphics-design.4xlarge",
        "stream.graphics-design.large",
        "stream.graphics-design.xlarge",
        "stream.graphics-pro.16xlarge",
        "stream.graphics-pro.4xlarge",
        "stream.graphics-pro.8xlarge",
        "stream.graphics.g4dn.12xlarge",
        "stream.graphics.g4dn.16xlarge",
        "stream.graphics.g4dn.2xlarge",
        "stream.graphics.g4dn.4xlarge",
        "stream.graphics.g4dn.8xlarge",
        "stream.graphics.g4dn.xlarge",
        "stream.memory.2xlarge",
        "stream.memory.4xlarge",
        "stream.memory.8xlarge",
        "stream.memory.large",
        "stream.memory.xlarge",
        "stream.memory.z1d.12xlarge",
        "stream.memory.z1d.2xlarge",
        "stream.memory.z1d.3xlarge",
        "stream.memory.z1d.6xlarge",
        "stream.memory.z1d.large",
        "stream.memory.z1d.xlarge",
        "stream.standard.large",
        "stream.standard.medium",
        "stream.standard.small"
      ]
    },
    "AvailabilityZone": {
      "AllowedValues": [
        "af-south-1a",
        "af-south-1b",
        "af-south-1c",
        "ap-east-1a",
        "ap-east-1b",
        "ap-east-1c",
        "ap-northeast-1a",
        "ap-northeast-1b",
        "ap-northeast-1c",
        "ap-northeast-1d",
        "ap-northeast-2a",
        "ap-northeast-2b",
        "ap-northeast-2c",
        "ap-northeast-2d",
        "ap-northeast-3a",
        "ap-south-1a",
        "ap-south-1b",
        "ap-south-1c",
        "ap-southeast-1a",
        "ap-southeast-1b",
        "ap-southeast-1c",
        "ap-southeast-2a",
        "ap-southeast-2b",
        "ap-southeast-2c",
        "ca-central-1a",
        "ca-central-1b",
        "ca-central-1d",
        "cn-north-1a",
        "cn-north-1b",
        "cn-northwest-1a",
        "cn-northwest-1b",
        "cn-northwest-1c",
        "eu-central-1a",
        "eu-central-1b",
        "eu-central-1c",
        "eu-north-1a",
        "eu-north-1b",
        "eu-north-1c",
        "eu-south-1a",
        "eu-south-1b",
        "eu-south-1c",
        "eu-west-1a",
        "eu-west-1b",
        "eu-west-1c",
        "eu-west-2a",
        "eu-west-2b",
        "eu-west-2c",
        "eu-west-3a",
        "eu-west-3b",
        "eu-west-3c",
        "me-south-1a",
        "me-south-1b",
        "me-south-1c",
        "sa-east-1a",
        "sa-east-1b",
        "sa-east-1c",
        "us-east-1a",
        "us-east-1b",
        "us-east-1c",
        "us-east-1d",
        "us-east-1e",
        "us-east-1f",
        "us-east-2a",
        "us-east-2b",
        "us-east-2c",
        "us-gov-east-1a",
        "us-gov-east-1b",
        "us-gov-east-1c",
        "us-gov-west-1a",
        "us-gov-west-1b",
        "us-gov-west-1c",
        "us-west-1a",
        "us-west-1b",
        "us-west-1c",
        "us-west-2a",
        "us-west-2b",
        "us-west-2c",
        "us-west-2d",
        "us-west-2-lax-1a",
        "us-west-2-lax-1b"
      ],
      "GetAtt": {
        "AWS::EC2::Instance": "AvailabilityZone",
        "AWS::EC2::Subnet": "AvailabilityZone",
        "AWS::OpsWorks::Instance": "AvailabilityZone"
      },
      "Ref": {
        "Parameters": [
          "String",
          "AvailabilityZone"
        ]
      }
    },
    "AvailabilityZoneWithAll": {
      "AllowedValues": [
        "all",
        "af-south-1a",
        "af-south-1b",
        "af-south-1c",
        "ap-east-1a",
        "ap-east-1b",
        "ap-east-1c",
        "ap-northeast-1a",
        "ap-northeast-1b",
        "ap-northeast-1c",
        "ap-northeast-1d",
        "ap-northeast-2a",
        "ap-northeast-2b",
        "ap-northeast-2c",
        "ap-northeast-2d",
        "ap-northeast-3a",
        "ap-south-1a",
        "ap-south-1b",
        "ap-south-1c",
        "ap-southeast-1a",
        "ap-southeast-1b",
        "ap-southeast-1c",
        "ap-southeast-2a",
        "ap-southeast-2b",
        "ap-southeast-2c",
        "ca-central-1a",
        "ca-central-1b",
        "ca-central-1d",
        "cn-north-1a",
        "cn-north-1b",
        "cn-northwest-1a",
        "cn-northwest-1b",
        "cn-northwest-1c",
        "eu-central-1a",
        "eu-central-1b",
        "eu-central-1c",
        "eu-north-1a",
        "eu-north-1b",
        "eu-north-1c",
        "eu-south-1a",
        "eu-south-1b",
        "eu-south-1c",
        "eu-west-1a",
        "eu-west-1b",
        "eu-west-1c",
        "eu-west-2a",
        "eu-west-2b",
        "eu-west-2c",
        "eu-west-3a",
        "eu-west-3b",
        "eu-west-3c",
        "me-south-1a",
        "me-south-1b",
        "me-south-1c",
        "sa-east-1a",
        "sa-east-1b",
        "sa-east-1c",
        "us-east-1a",
        "us-east-1b",
        "us-east-1c",
        "us-east-1d",
        "us-east-1e",
        "us-east-1f",
        "us-east-2a",
        "us-east-2b",
        "us-east-2c",
        "us-gov-east-1a",
        "us-gov-east-1b",
        "us-gov-east-1c",
        "us-gov-west-1a",
        "us-gov-west-1b",
        "us-gov-west-1c",
        "us-west-1a",
        "us-west-1b",
        "us-west-1c",
        "us-west-2a",
        "us-west-2b",
        "us-west-2c",
        "us-west-2d",
        "us-west-2-lax-1a",
        "us-west-2-lax-1b"
      ],
      "GetAtt": {
        "AWS::EC2::Instance": "AvailabilityZone",
        "AWS::EC2::Subnet": "AvailabilityZone",
        "AWS::OpsWorks::Instance": "AvailabilityZone"
      },
      "Ref": {
        "Parameters": [
          "String",
          "AvailabilityZone"
        ]
      }
    },
    "AvailabilityZones": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "Strings",
          "AvailabilityZones"
        ]
      }
    },
    "AwsCidrIp": {
      "AllowedPattern": "x.x.x.x/y",
      "AllowedPatternRegex": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[6-9]|2[0-8]))$",
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "BlockchainInstanceType": {},
    "CertificateValidationMethod": {
      "AllowedValues": [
        "DNS",
        "EMAIL"
      ]
    },
    "CidrIp": {
      "AllowedPattern": "x.x.x.x/y",
      "AllowedPatternRegex": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/([0-9]|[1-2][0-9]|3[0-2]))$",
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "CodePipelineWehbookAuthentication": {
      "AllowedValues": [
        "GITHUB_HMAC",
        "IP",
        "UNAUTHENTICATED"
      ]
    },
    "CustomerGatewayType": {
      "AllowedValues": [
        "ipsec.1"
      ]
    },
    "DAXInstanceType": {
      "AllowedValues": [
        "dax.r4.16xlarge",
        "dax.r4.2xlarge",
        "dax.r4.4xlarge",
        "dax.r4.8xlarge",
        "dax.r4.large",
        "dax.r4.xlarge",
        "dax.r5.12xlarge",
        "dax.r5.16xlarge",
        "dax.r5.24xlarge",
        "dax.r5.2xlarge",
        "dax.r5.4xlarge",
        "dax.r5.8xlarge",
        "dax.r5.large",
        "dax.r5.xlarge",
        "dax.t2.medium",
        "dax.t2.small",
        "dax.t3.medium",
        "dax.t3.small"
      ],
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "DHCPOptionsNetbiosNodeType": {
      "AllowedValues": [
        "1",
        "2",
        "4",
        "8"
      ]
    },
    "DLMPolicyResourceType": {
      "AllowedValues": [
        "INSTANCE",
        "VOLUME"
      ]
    },
    "DmsEndpointEngineName": {
      "AllowedValues": [
        "aurora-postgresql",
        "aurora",
        "azuredb",
        "db2",
        "docdb",
        "dynamodb",
        "elasticsearch",
        "kafka",
        "kinesis",
        "mariadb",
        "mongodb",
        "mysql",
        "neptune",
        "oracle",
        "postgres",
        "redshift",
        "s3",
        "sqlserver",
        "sybase"
      ]
    },
    "DmsEndpointSslMode": {
      "AllowedValues": [
        "none",
        "require",
        "verify-ca",
        "verify-full"
      ]
    },
    "DmsEndpointType": {
      "AllowedValues": [
        "source",
        "target"
      ]
    },
    "DocumentDBEngineVersion": {
      "AllowedValues": [
        "3.6.0",
        "4.0",
        "4.0.0"
      ]
    },
    "DocumentDBInstanceClass": {
      "AllowedValues": [
        "db.r5.12xlarge",
        "db.r5.24xlarge",
        "db.r5.2xlarge",
        "db.r5.4xlarge",
        "db.r5.large",
        "db.r5.xlarge",
        "db.t3.medium"
      ],
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "EC2CapacityReservationEndDateType": {
      "AllowedValues": [
        "limited",
        "unlimited"
      ]
    },
    "EC2CapacityReservationInstanceMatchCriteria": {
      "AllowedValues": [
        "open",
        "targeted"
      ]
    },
    "EC2CapacityReservationInstancePlatform": {
      "AllowedValues": [
        "Linux with SQL Server Enterprise",
        "Linux with SQL Server Standard",
        "Linux with SQL Server Web",
        "Linux/UNIX",
        "Red Hat Enterprise Linux",
        "SUSE Linux",
        "Windows",
        "Windows with SQL Server",
        "Windows with SQL Server Enterprise",
        "Windows with SQL Server Standard",
        "Windows with SQL Server Web"
      ]
    },
    "EC2InstanceInitiatedShutdownBehavior": {
      "AllowedValues": [
        "stop",
        "terminate"
      ]
    },
    "EC2MarketType": {
      "AllowedValues": [
        "spot"
      ]
    },
    "EC2SpotInstanceInitiatedShutdownBehavior": {
      "AllowedValues": [
        "hibernate",
        "stop",
        "terminate"
      ]
    },
    "EC2SpotInstanceType": {
      "AllowedValues": [
        "one-time",
        "persistent"
      ]
    },
    "EFSFileSystemLifecyclePolicy": {
      "AllowedValues": [
        "AFTER_14_DAYS",
        "AFTER_30_DAYS",
        "AFTER_60_DAYS",
        "AFTER_7_DAYS",
        "AFTER_90_DAYS"
      ]
    },
    "EFSFileSystemPerformanceMode": {
      "AllowedValues": [
        "generalPurpose",
        "maxIO"
      ]
    },
    "EFSFileSystemThroughputMode": {
      "AllowedValues": [
        "bursting",
        "provisioned"
      ]
    },
    "EMRInstanceType": {
      "AllowedValues": [
        "c3.2xlarge",
        "c3.4xlarge",
        "c3.8xlarge",
        "c3.large",
        "c3.xlarge",
        "c4.2xlarge",
        "c4.4xlarge",
        "c4.8xlarge",
        "c4.large",
        "c4.xlarge",
        "c5.12xlarge",
        "c5.18xlarge",
        "c5.24xlarge",
        "c5.2xlarge",
        "c5.4xlarge",
        "c5.9xlarge",
        "c5.xlarge",
        "c5d.12xlarge",
        "c5d.18xlarge",
        "c5d.24xlarge",
        "c5d.2xlarge",
        "c5d.4xlarge",
        "c5d.9xlarge",
        "c5d.xlarge",
        "c5n.18xlarge",
        "c5n.2xlarge",
        "c5n.4xlarge",
        "c5n.9xlarge",
        "c5n.xlarge",
        "c6g.12xlarge",
        "c6g.16xlarge",
        "c6g.2xlarge",
        "c6g.4xlarge",
        "c6g.8xlarge",
        "c6g.xlarge",
        "d2.2xlarge",
        "d2.4xlarge",
        "d2.8xlarge",
        "d2.xlarge",
        "g3.16xlarge",
        "g3.4xlarge",
        "g3.8xlarge",
        "g3s.xlarge",
        "g4dn.12xlarge",
        "g4dn.16xlarge",
        "g4dn.2xlarge",
        "g4dn.4xlarge",
        "g4dn.8xlarge",
        "g4dn.xlarge",
        "i2.2xlarge",
        "i2.4xlarge",
        "i2.8xlarge",
        "i2.xlarge",
        "i3.16xlarge",
        "i3.2xlarge",
        "i3.4xlarge",
        "i3.8xlarge",
        "i3.xlarge",
        "i3en.12xlarge",
        "i3en.24xlarge",
        "i3en.2xlarge",
        "i3en.3xlarge",
        "i3en.6xlarge",
        "i3en.xlarge",
        "m3.2xlarge",
        "m3.large",
        "m3.medium",
        "m3.xlarge",
        "m4.10xlarge",
        "m4.16xlarge",
        "m4.2xlarge",
        "m4.4xlarge",
        "m4.large",
        "m4.xlarge",
        "m5.12xlarge",
        "m5.16xlarge",
        "m5.24xlarge",
        "m5.2xlarge",
        "m5.4xlarge",
        "m5.8xlarge",
        "m5.xlarge",
        "m5a.12xlarge",
        "m5a.16xlarge",
        "m5a.24xlarge",
        "m5a.2xlarge",
        "m5a.4xlarge",
        "m5a.8xlarge",
        "m5a.xlarge",
        "m5d.12xlarge",
        "m5d.16xlarge",
        "m5d.24xlarge",
        "m5d.2xlarge",
        "m5d.4xlarge",
        "m5d.8xlarge",
        "m5d.xlarge",
        "m6g.12xlarge",
        "m6g.16xlarge",
        "m6g.2xlarge",
        "m6g.4xlarge",
        "m6g.8xlarge",
        "m6g.xlarge",
        "p2.16xlarge",
        "p2.8xlarge",
        "p2.xlarge",
        "p3.16xlarge",
        "p3.2xlarge",
        "p3.8xlarge",
        "r3.2xlarge",
        "r3.4xlarge",
        "r3.8xlarge",
        "r3.xlarge",
        "r4.16xlarge",
        "r4.2xlarge",
        "r4.4xlarge",
        "r4.8xlarge",
        "r4.large",
        "r4.xlarge",
        "r5.12xlarge",
        "r5.16xlarge",
        "r5.24xlarge",
        "r5.2xlarge",
        "r5.4xlarge",
        "r5.8xlarge",
        "r5.xlarge",
        "r5a.12xlarge",
        "r5a.16xlarge",
        "r5a.24xlarge",
        "r5a.2xlarge",
        "r5a.4xlarge",
        "r5a.8xlarge",
        "r5a.xlarge",
        "r5d.12xlarge",
        "r5d.16xlarge",
        "r5d.24xlarge",
        "r5d.2xlarge",
        "r5d.4xlarge",
        "r5d.8xlarge",
        "r5d.xlarge",
        "r6g.12xlarge",
        "r6g.16xlarge",
        "r6g.2xlarge",
        "r6g.4xlarge",
        "r6g.8xlarge",
        "r6g.xlarge",
        "z1d.12xlarge",
        "z1d.2xlarge",
        "z1d.3xlarge",
        "z1d.6xlarge",
        "z1d.xlarge"
      ]
    },
    "EbsIops": {
      "NumberMax": 20000,
      "NumberMin": 100
    },
    "EbsVolumeType": {
      "AllowedValues": [
        "gp2",
        "gp3",
        "io1",
        "io2",
        "sc1",
        "st1",
        "standard"
      ]
    },
    "Ec2CpuCredits": {
      "AllowedValues": [
        "standard",
        "unlimited"
      ]
    },
    "Ec2ElasticIpDomain": {
      "AllowedValues": [
        "standard",
        "vpc"
      ]
    },
    "Ec2FleetDefaultTargetCapacityType": {
      "AllowedValues": [
        "on-demand",
        "spot"
      ]
    },
    "Ec2FleetExcessCapacityTerminationPolicy": {
      "AllowedValues": [
        "no-termination",
        "termination"
      ]
    },
    "Ec2FleetOnDemandAllocationStrategy": {
      "AllowedValues": [
        "lowest-price",
        "prioritized"
      ]
    },
    "Ec2FleetSpotAllocationStrategy": {
      "AllowedValues": [
        "capacityOptimized",
        "capacityOptimizedPrioritized",
        "diversified",
        "lowestPrice"
      ]
    },
    "Ec2FleetSpotInterruptionBehavior": {
      "AllowedValues": [
        "hibernate",
        "stop",
        "terminate"
      ]
    },
    "Ec2FleetType": {
      "AllowedValues": [
        "instant",
        "maintain",
        "request"
      ]
    },
    "Ec2HostAutoPlacement": {
      "AllowedValues": [
        "off",
        "on"
      ]
    },
    "Ec2InstanceType": {
      "AllowedValues": [
        "a1.2xlarge",
        "a1.4xlarge",
        "a1.large",
        "a1.medium",
        "a1.metal",
        "a1.xlarge",
        "c3.2xlarge",
        "c3.4xlarge",
        "c3.8xlarge",
        "c3.large",
        "c3.xlarge",
        "c4.2xlarge",
        "c4.4xlarge",
        "c4.8xlarge",
        "c4.large",
        "c4.xlarge",
        "c5.12xlarge",
        "c5.18xlarge",
        "c5.24xlarge",
        "c5.2xlarge",
        "c5.4xlarge",
        "c5.9xlarge",
        "c5.large",
        "c5.metal",
        "c5.xlarge",
        "c5a.12xlarge",
        "c5a.16xlarge",
        "c5a.24xlarge",
        "c5a.2xlarge",
        "c5a.4xlarge",
        "c5a.8xlarge",
        "c5a.large",
        "c5a.xlarge",
        "c5ad.12xlarge",
        "c5ad.16xlarge",
        "c5ad.24xlarge",
        "c5ad.2xlarge",
        "c5ad.4xlarge",
        "c5ad.8xlarge",
        "c5ad.large",
        "c5ad.xlarge",
        "c5d.12xlarge",
        "c5d.18xlarge",
        "c5d.24xlarge",
        "c5d.2xlarge",
        "c5d.4xlarge",
        "c5d.9xlarge",
        "c5d.large",
        "c5d.metal",
        "c5d.xlarge",
        "c5n.18xlarge",
        "c5n.2xlarge",
        "c5n.4xlarge",
        "c5n.9xlarge",
        "c5n.large",
        "c5n.metal",
        "c5n.xlarge",
        "c6g.12xlarge",
        "c6g.16xlarge",
        "c6g.2xlarge",
        "c6g.4xlarge",
        "c6g.8xlarge",
        "c6g.large",
        "c6g.medium",
        "c6g.metal",
        "c6g.xlarge",
        "c6gd.12xlarge",
        "c6gd.16xlarge",
        "c6gd.2xlarge",
        "c6gd.4xlarge",
        "c6gd.8xlarge",
        "c6gd.large",
        "c6gd.medium",
        "c6gd.metal",
        "c6gd.xlarge",
        "d2.2xlarge",
        "d2.4xlarge",
        "d2.8xlarge",
        "d2.xlarge",
        "d3.2xlarge",
        "d3.4xlarge",
        "d3.8xlarge",
        "d3.xlarge",
        "g2.2xlarge",
        "g2.8xlarge",
        "g3.16xlarge",
        "g3.4xlarge",
        "g3.8xlarge",
        "g3s.xlarge",
        "g4dn.12xlarge",
        "g4dn.16xlarge",
        "g4dn.2xlarge",
        "g4dn.4xlarge",
        "g4dn.8xlarge",
        "g4dn.metal",
        "g4dn.xlarge",
        "i2.2xlarge",
        "i2.4xlarge",
        "i2.8xlarge",
        "i2.large",
        "i2.xlarge",
        "i3.16xlarge",
        "i3.2xlarge",
        "i3.4xlarge",
        "i3.8xlarge",
        "i3.large",
        "i3.metal",
        "i3.xlarge",
        "i3en.12xlarge",
        "i3en.24xlarge",
        "i3en.2xlarge",
        "i3en.3xlarge",
        "i3en.6xlarge",
        "i3en.large",
        "i3en.metal",
        "i3en.xlarge",
        "inf1.24xlarge",
        "inf1.2xlarge",
        "inf1.6xlarge",
        "inf1.xlarge",
        "m3.2xlarge",
        "m3.large",
        "m3.medium",
        "m3.xlarge",
        "m4.10xlarge",
        "m4.16xlarge",
        "m4.2xlarge",
        "m4.4xlarge",
        "m4.large",
        "m4.xlarge",
        "m5.12xlarge",
        "m5.16xlarge",
        "m5.24xlarge",
        "m5.2xlarge",
        "m5.4xlarge",
        "m5.8xlarge",
        "m5.large",
        "m5.metal",
        "m5.xlarge",
        "m5a.12xlarge",
        "m5a.16xlarge",
        "m5a.24xlarge",
        "m5a.2xlarge",
        "m5a.4xlarge",
        "m5a.8xlarge",
        "m5a.large",
        "m5a.xlarge",
        "m5ad.12xlarge",
        "m5ad.16xlarge",
        "m5ad.24xlarge",
        "m5ad.2xlarge",
        "m5ad.4xlarge",
        "m5ad.8xlarge",
        "m5ad.large",
        "m5ad.xlarge",
        "m5d.12xlarge",
        "m5d.16xlarge",
        "m5d.24xlarge",
        "m5d.2xlarge",
        "m5d.4xlarge",
        "m5d.8xlarge",
        "m5d.large",
        "m5d.metal",
        "m5d.xlarge",
        "m5dn.12xlarge",
        "m5dn.16xlarge",
        "m5dn.24xlarge",
        "m5dn.2xlarge",
        "m5dn.4xlarge",
        "m5dn.8xlarge",
        "m5dn.large",
        "m5dn.metal",
        "m5dn.xlarge",
        "m5n.12xlarge",
        "m5n.16xlarge",
        "m5n.24xlarge",
        "m5n.2xlarge",
        "m5n.4xlarge",
        "m5n.8xlarge",
        "m5n.large",
        "m5n.metal",
        "m5n.xlarge",
        "m5zn.12xlarge",
        "m5zn.2xlarge",
        "m5zn.3xlarge",
        "m5zn.6xlarge",
        "m5zn.large",
        "m5zn.metal",
        "m5zn.xlarge",
        "m6g.12xlarge",
        "m6g.16xlarge",
        "m6g.2xlarge",
        "m6g.4xlarge",
        "m6g.8xlarge",
        "m6g.large",
        "m6g.medium",
        "m6g.metal",
        "m6g.xlarge",
        "m6gd.12xlarge",
        "m6gd.16xlarge",
        "m6gd.2xlarge",
        "m6gd.4xlarge",
        "m6gd.8xlarge",
        "m6gd.large",
        "m6gd.medium",
        "m6gd.metal",
        "m6gd.xlarge",
        "p2.16xlarge",
        "p2.8xlarge",
        "p2.xlarge",
        "p3.16xlarge",
        "p3.2xlarge",
        "p3.8xlarge",
        "r3.2xlarge",
        "r3.4xlarge",
        "r3.8xlarge",
        "r3.large",
        "r3.xlarge",
        "r4.16xlarge",
        "r4.2xlarge",
        "r4.4xlarge",
        "r4.8xlarge",
        "r4.large",
        "r4.xlarge",
        "r5.12xlarge",
        "r5.16xlarge",
        "r5.24xlarge",
        "r5.2xlarge",
        "r5.4xlarge",
        "r5.8xlarge",
        "r5.large",
        "r5.metal",
        "r5.xlarge",
        "r5a.12xlarge",
        "r5a.16xlarge",
        "r5a.24xlarge",
        "r5a.2xlarge",
        "r5a.4xlarge",
        "r5a.8xlarge",
        "r5a.large",
        "r5a.xlarge",
        "r5ad.12xlarge",
        "r5ad.16xlarge",
        "r5ad.24xlarge",
        "r5ad.2xlarge",
        "r5ad.4xlarge",
        "r5ad.8xlarge",
        "r5ad.large",
        "r5ad.xlarge",
        "r5b.12xlarge",
        "r5b.16xlarge",
        "r5b.24xlarge",
        "r5b.2xlarge",
        "r5b.4xlarge",
        "r5b.8xlarge",
        "r5b.large",
        "r5b.metal",
        "r5b.xlarge",
        "r5d.12xlarge",
        "r5d.16xlarge",
        "r5d.24xlarge",
        "r5d.2xlarge",
        "r5d.4xlarge",
        "r5d.8xlarge",
        "r5d.large",
        "r5d.metal",
        "r5d.xlarge",
        "r5dn.12xlarge",
        "r5dn.16xlarge",
        "r5dn.24xlarge",
        "r5dn.2xlarge",
        "r5dn.4xlarge",
        "r5dn.8xlarge",
        "r5dn.large",
        "r5dn.metal",
        "r5dn.xlarge",
        "r5n.12xlarge",
        "r5n.16xlarge",
        "r5n.24xlarge",
        "r5n.2xlarge",
        "r5n.4xlarge",
        "r5n.8xlarge",
        "r5n.large",
        "r5n.metal",
        "r5n.xlarge",
        "r6g.12xlarge",
        "r6g.16xlarge",
        "r6g.2xlarge",
        "r6g.4xlarge",
        "r6g.8xlarge",
        "r6g.large",
        "r6g.medium",
        "r6g.metal",
        "r6g.xlarge",
        "r6gd.12xlarge",
        "r6gd.16xlarge",
        "r6gd.2xlarge",
        "r6gd.4xlarge",
        "r6gd.8xlarge",
        "r6gd.large",
        "r6gd.medium",
        "r6gd.metal",
        "r6gd.xlarge",
        "t2.2xlarge",
        "t2.large",
        "t2.medium",
        "t2.micro",
        "t2.nano",
        "t2.small",
        "t2.xlarge",
        "t3.2xlarge",
        "t3.large",
        "t3.medium",
        "t3.micro",
        "t3.nano",
        "t3.small",
        "t3.xlarge",
        "t3a.2xlarge",
        "t3a.large",
        "t3a.medium",
        "t3a.micro",
        "t3a.nano",
        "t3a.small",
        "t3a.xlarge",
        "t4g.2xlarge",
        "t4g.large",
        "t4g.medium",
        "t4g.micro",
        "t4g.nano",
        "t4g.small",
        "t4g.xlarge",
        "u-12tb1.metal",
        "u-6tb1.metal",
        "u-9tb1.metal",
        "x1.16xlarge",
        "x1.32xlarge",
        "x1e.16xlarge",
        "x1e.2xlarge",
        "x1e.32xlarge",
        "x1e.4xlarge",
        "x1e.8xlarge",
        "x1e.xlarge",
        "z1d.12xlarge",
        "z1d.2xlarge",
        "z1d.3xlarge",
        "z1d.6xlarge",
        "z1d.large",
        "z1d.metal",
        "z1d.xlarge"
      ],
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "Ec2Tenancy": {
      "AllowedValues": [
        "dedicated",
        "default",
        "host"
      ]
    },
    "EcsNetworkMode": {
      "AllowedValues": [
        "awsvpc",
        "bridge",
        "host",
        "none"
      ]
    },
    "EcsTaskDefinitionProxyType": {
      "AllowedValues": [
        "APPMESH"
      ]
    },
    "ElastiCacheInstanceType": {
      "AllowedValues": [
        "cache.m3.2xlarge",
        "cache.m3.large",
        "cache.m3.medium",
        "cache.m3.xlarge",
        "cache.m4.10xlarge",
        "cache.m4.2xlarge",
        "cache.m4.4xlarge",
        "cache.m4.large",
        "cache.m4.xlarge",
        "cache.m5.12xlarge",
        "cache.m5.24xlarge",
        "cache.m5.2xlarge",
        "cache.m5.4xlarge",
        "cache.m5.large",
        "cache.m5.xlarge",
        "cache.m6g.12xlarge",
        "cache.m6g.16xlarge",
        "cache.m6g.2xlarge",
        "cache.m6g.4xlarge",
        "cache.m6g.8xlarge",
        "cache.m6g.large",
        "cache.m6g.xlarge",
        "cache.r3.2xlarge",
        "cache.r3.4xlarge",
        "cache.r3.8xlarge",
        "cache.r3.large",
        "cache.r3.xlarge",
        "cache.r4.16xlarge",
        "cache.r4.2xlarge",
        "cache.r4.4xlarge",
        "cache.r4.8xlarge",
        "cache.r4.large",
        "cache.r4.xlarge",
        "cache.r5.12xlarge",
        "cache.r5.24xlarge",
        "cache.r5.2xlarge",
        "cache.r5.4xlarge",
        "cache.r5.large",
        "cache.r5.xlarge",
        "cache.r6g.12xlarge",
        "cache.r6g.16xlarge",
        "cache.r6g.2xlarge",
        "cache.r6g.4xlarge",
        "cache.r6g.8xlarge",
        "cache.r6g.large",
        "cache.r6g.xlarge",
        "cache.t2.medium",
        "cache.t2.micro",
        "cache.t2.small",
        "cache.t3.medium",
        "cache.t3.micro",
        "cache.t3.small"
      ]
    },
    "ElasticInferenceAccelerator": {
      "AllowedValues": [
        "eia1.large",
        "eia1.medium",
        "eia1.xlarge"
      ]
    },
    "ElasticsearchInstanceType": {
      "AllowedValues": [
        "c4.2xlarge.elasticsearch",
        "c4.4xlarge.elasticsearch",
        "c4.8xlarge.elasticsearch",
        "c4.large.elasticsearch",
        "c4.xlarge.elasticsearch",
        "c5.18xlarge.elasticsearch",
        "c5.2xlarge.elasticsearch",
        "c5.4xlarge.elasticsearch",
        "c5.9xlarge.elasticsearch",
        "c5.large.elasticsearch",
        "c5.xlarge.elasticsearch",
        "i2.2xlarge.elasticsearch",
        "i2.xlarge.elasticsearch",
        "i3.16xlarge.elasticsearch",
        "i3.2xlarge.elasticsearch",
        "i3.4xlarge.elasticsearch",
        "i3.8xlarge.elasticsearch",
        "i3.large.elasticsearch",
        "i3.xlarge.elasticsearch",
        "m3.2xlarge.elasticsearch",
        "m3.large.elasticsearch",
        "m3.medium.elasticsearch",
        "m3.xlarge.elasticsearch",
        "m4.10xlarge.elasticsearch",
        "m4.2xlarge.elasticsearch",
        "m4.4xlarge.elasticsearch",
        "m4.large.elasticsearch",
        "m4.xlarge.elasticsearch",
        "m5.12xlarge.elasticsearch",
        "m5.2xlarge.elasticsearch",
        "m5.4xlarge.elasticsearch",
        "m5.large.elasticsearch",
        "m5.xlarge.elasticsearch",
        "r3.2xlarge.elasticsearch",
        "r3.4xlarge.elasticsearch",
        "r3.8xlarge.elasticsearch",
        "r3.large.elasticsearch",
        "r3.xlarge.elasticsearch",
        "r4.16xlarge.elasticsearch",
        "r4.2xlarge.elasticsearch",
        "r4.4xlarge.elasticsearch",
        "r4.8xlarge.elasticsearch",
        "r4.large.elasticsearch",
        "r4.xlarge.elasticsearch",
        "r5.12xlarge.elasticsearch",
        "r5.2xlarge.elasticsearch",
        "r5.4xlarge.elasticsearch",
        "r5.large.elasticsearch",
        "r5.xlarge.elasticsearch",
        "t2.medium.elasticsearch",
        "t2.micro.elasticsearch",
        "t2.small.elasticsearch",
        "t3.medium.elasticsearch",
        "t3.small.elasticsearch",
        "ultrawarm1.large.elasticsearch",
        "ultrawarm1.medium.elasticsearch"
      ]
    },
    "GameLiftInstanceType": {
      "AllowedValues": [
        "c3.2xlarge",
        "c3.4xlarge",
        "c3.8xlarge",
        "c3.large",
        "c3.xlarge",
        "c4.2xlarge",
        "c4.4xlarge",
        "c4.8xlarge",
        "c4.large",
        "c4.xlarge",
        "c5.12xlarge",
        "c5.18xlarge",
        "c5.24xlarge",
        "c5.2xlarge",
        "c5.4xlarge",
        "c5.9xlarge",
        "c5.large",
        "c5.xlarge",
        "c5a.12xlarge",
        "c5a.16xlarge",
        "c5a.24xlarge",
        "c5a.2xlarge",
        "c5a.4xlarge",
        "c5a.8xlarge",
        "c5a.large",
        "c5a.xlarge",
        "m3.2xlarge",
        "m3.large",
        "m3.medium",
        "m3.xlarge",
        "m4.10xlarge",
        "m4.2xlarge",
        "m4.4xlarge",
        "m4.large",
        "m4.xlarge",
        "m5.12xlarge",
        "m5.16xlarge",
        "m5.24xlarge",
        "m5.2xlarge",
        "m5.4xlarge",
        "m5.8xlarge",
        "m5.large",
        "m5.xlarge",
        "m5a.12xlarge",
        "m5a.16xlarge",
        "m5a.24xlarge",
        "m5a.2xlarge",
        "m5a.4xlarge",
        "m5a.8xlarge",
        "m5a.large",
        "m5a.xlarge",
        "r3.2xlarge",
        "r3.4xlarge",
        "r3.8xlarge",
        "r3.large",
        "r3.xlarge",
        "r4.16xlarge",
        "r4.2xlarge",
        "r4.4xlarge",
        "r4.8xlarge",
        "r4.large",
        "r4.xlarge",
        "r5.12xlarge",
        "r5.16xlarge",
        "r5.24xlarge",
        "r5.2xlarge",
        "r5.4xlarge",
        "r5.8xlarge",
        "r5.large",
        "r5.xlarge",
        "r5a.12xlarge",
        "r5a.16xlarge",
        "r5a.24xlarge",
        "r5a.2xlarge",
        "r5a.4xlarge",
        "r5a.8xlarge",
        "r5a.large",
        "r5a.xlarge",
        "t2.large",
        "t2.medium",
        "t2.micro",
        "t2.small"
      ]
    },
    "HttpProtocol": {
      "AllowedValues": [
        "http",
        "https"
      ]
    },
    "ImageId": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String",
          "ImageId"
        ]
      }
    },
    "KeyPair": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String",
          "KeyPair"
        ]
      }
    },
    "KmsKey.Arn": {
      "GetAtt": {
        "AWS::KMS::Key": "Arn"
      },
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "LambdaRuntime": {
      "AllowedValues": [
        "dotnetcore1.0",
        "dotnetcore2.0",
        "dotnetcore2.1",
        "dotnetcore3.1",
        "go1.x",
        "java11",
        "java8",
        "java8.al2",
        "nodejs",
        "nodejs10.x",
        "nodejs12.x",
        "nodejs14.x",
        "nodejs4.3",
        "nodejs4.3-edge",
        "nodejs6.10",
        "nodejs8.10",
        "provided",
        "provided.al2",
        "python2.7",
        "python3.6",
        "python3.7",
        "python3.8",
        "ruby2.5",
        "ruby2.7"
      ]
    },
    "LaunchConfigurationName": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::AutoScaling::LaunchConfiguration"
        ]
      }
    },
    "LaunchTemplateName": {
      "AllowedPattern": "[a-zA-Z0-9().-/_]+",
      "AllowedPatternRegex": "^[a-zA-Z0-9().\\-/_]+$",
      "StringMax": 128,
      "StringMin": 3
    },
    "LaunchTemplateTagSpecificationResourceType": {
      "AllowedValues": [
        "client-vpn-endpoint",
        "customer-gateway",
        "dedicated-host",
        "dhcp-options",
        "egress-only-internet-gateway",
        "elastic-gpu",
        "elastic-ip",
        "export-image-task",
        "export-instance-task",
        "fleet",
        "fpga-image",
        "host-reservation",
        "image",
        "import-image-task",
        "import-snapshot-task",
        "instance",
        "internet-gateway",
        "key-pair",
        "launch-template",
        "local-gateway-route-table-vpc-association",
        "natgateway",
        "network-acl",
        "network-insights-analysis",
        "network-insights-path",
        "network-interface",
        "placement-group",
        "reserved-instances",
        "route-table",
        "security-group",
        "snapshot",
        "spot-fleet-request",
        "spot-instances-request",
        "subnet",
        "traffic-mirror-filter",
        "traffic-mirror-session",
        "traffic-mirror-target",
        "transit-gateway",
        "transit-gateway-attachment",
        "transit-gateway-connect-peer",
        "transit-gateway-multicast-domain",
        "transit-gateway-route-table",
        "volume",
        "vpc",
        "vpc-flow-log",
        "vpc-peering-connection",
        "vpn-connection",
        "vpn-gateway"
      ]
    },
    "LoadBalancerName": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::ElasticLoadBalancing::LoadBalancer"
        ]
      }
    },
    "LoadBalancerNames": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "Strings"
        ]
      }
    },
    "LoadBalancerPort": {
      "NumberMax": 65535,
      "NumberMin": 1,
      "Ref": {
        "Parameters": [
          "String",
          "Number"
        ]
      }
    },
    "LoadBalancerV2Arn": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::ElasticLoadBalancingV2::LoadBalancer"
        ]
      }
    },
    "MicrosoftADEdition": {
      "AllowedValues": [
        "Enterprise",
        "Standard"
      ]
    },
    "NeptuneInstanceClass": {
      "AllowedValues": [
        "db.r4.2xlarge",
        "db.r4.4xlarge",
        "db.r4.8xlarge",
        "db.r4.large",
        "db.r4.xlarge",
        "db.r5.12xlarge",
        "db.r5.24xlarge",
        "db.r5.2xlarge",
        "db.r5.4xlarge",
        "db.r5.8xlarge",
        "db.r5.large",
        "db.r5.xlarge",
        "db.t3.medium"
      ],
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "NetworkAclRuleAction": {
      "AllowedValues": [
        "allow",
        "deny"
      ]
    },
    "NetworkAclRuleNumber": {
      "NumberMax": 32766,
      "NumberMin": 1
    },
    "NetworkInterfacePermission": {
      "AllowedValues": [
        "EIP-ASSOCIATE",
        "INSTANCE-ATTACH"
      ]
    },
    "PerformanceInsightsRetentionPeriod": {
      "AllowedValues": [
        "7",
        "731"
      ]
    },
    "PlacementGroup": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::EC2::PlacementGroup"
        ]
      }
    },
    "PlacementGroupStrategy": {
      "AllowedValues": [
        "cluster",
        "partition",
        "spread"
      ]
    },
    "PlacementTenancy": {
      "AllowedValues": [
        "dedicated",
        "default"
      ],
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "PredicateType": {
      "AllowedValues": [
        "ByteMatch",
        "GeoMatch",
        "IPMatch",
        "RegexMatch",
        "SizeConstraint",
        "SqlInjectionMatch",
        "XssMatch"
      ]
    },
    "PrivateIpAddress": {
      "GetAtt": {
        "AWS::EC2::NetworkInterface": "PrimaryPrivateIpAddress"
      },
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "RdsInstanceMonitoringInterval": {
      "AllowedValues": [
        "0",
        "1",
        "5",
        "10",
        "15",
        "30",
        "60"
      ]
    },
    "RecordSetFailover": {
      "AllowedValues": [
        "PRIMARY",
        "SECONDARY"
      ]
    },
    "RecordSetGeoContinentCode": {
      "AllowedValues": [
        "AF",
        "AN",
        "AS",
        "EU",
        "NA",
        "OC",
        "SA"
      ]
    },
    "RecordSetType": {
      "AllowedValues": [
        "A",
        "AAAA",
        "CAA",
        "CNAME",
        "DS",
        "MX",
        "NAPTR",
        "NS",
        "PTR",
        "SOA",
        "SPF",
        "SRV",
        "TXT"
      ]
    },
    "RedshiftClusterType": {
      "AllowedValues": [
        "multi-node",
        "single-node"
      ]
    },
    "RedshiftClusterVersion": {
      "AllowedValues": [
        "1.0"
      ]
    },
    "RedshiftInstanceType": {
      "AllowedValues": [
        "dc1.8xlarge",
        "dc1.large",
        "dc2.8xlarge",
        "dc2.large",
        "ds1.8xlarge",
        "ds1.xlarge",
        "ds2.8xlarge",
        "ds2.xlarge",
        "ra3.16xlarge",
        "ra3.4xlarge",
        "ra3.xlplus"
      ],
      "Ref": {
        "Parameters": [
          "String"
        ]
      }
    },
    "Region": {
      "AllowedValues": [
        "af-south-1",
        "ap-northeast-1",
        "ap-northeast-2",
        "ap-northeast-3",
        "ap-south-1",
        "ap-southeast-1",
        "ap-southeast-2",
        "ca-central-1",
        "eu-central-1",
        "eu-north-1",
        "eu-west-1",
        "eu-west-2",
        "eu-west-3",
        "sa-east-1",
        "us-east-1",
        "us-east-2",
        "us-gov-east-1",
        "us-gov-west-1",
        "us-west-1",
        "us-west-2"
      ]
    },
    "RestApiId": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::ApiGateway::RestApi"
        ]
      }
    },
    "Route53ResolverEndpointDirection": {
      "AllowedValues": [
        "INBOUND",
        "OUTBOUND"
      ]
    },
    "Route53ResolverRuleType": {
      "AllowedValues": [
        "FORWARD",
        "RECURSIVE",
        "SYSTEM"
      ]
    },
    "S3BucketAccelerationStatus": {
      "AllowedValues": [
        "Enabled",
        "Suspended"
      ]
    },
    "S3BucketAccessControl": {
      "AllowedValues": [
        "AuthenticatedRead",
        "AwsExecRead",
        "BucketOwnerFullControl",
        "BucketOwnerRead",
        "LogDeliveryWrite",
        "Private",
        "PublicRead",
        "PublicReadWrite"
      ]
    },
    "S3BucketInventoryId": {
      "AllowedPattern": "[a-zA-Z0-9.-_]+",
      "AllowedPatternRegex": "^[a-zA-Z0-9-_.]+$",
      "StringMax": 64,
      "StringMin": 1
    },
    "S3BucketInventoryIncludedObjectVersions": {
      "AllowedValues": [
        "All",
        "Current"
      ]
    },
    "S3BucketInventoryScheduleFrequency": {
      "AllowedValues": [
        "Daily",
        "Weekly"
      ]
    },
    "S3BucketSSEAlgorithm": {
      "AllowedValues": [
        "AES256",
        "aws:kms"
      ]
    },
    "S3BucketTopicConfigurationEvent": {
      "AllowedValues": [
        "s3:ObjectCreated:*",
        "s3:ObjectCreated:CompleteMultipartUpload",
        "s3:ObjectCreated:Copy",
        "s3:ObjectCreated:Post",
        "s3:ObjectCreated:Put",
        "s3:ObjectRemoved:*",
        "s3:ObjectRemoved:Delete",
        "s3:ObjectRemoved:DeleteMarkerCreated",
        "s3:ObjectRestore:*",
        "s3:ObjectRestore:Completed",
        "s3:ObjectRestore:Post",
        "s3:ReducedRedundancyLostObject",
        "s3:Replication:*",
        "s3:Replication:OperationFailedReplication",
        "s3:Replication:OperationMissedThreshold",
        "s3:Replication:OperationNotTracked",
        "s3:Replication:OperationReplicatedAfterThreshold"
      ]
    },
    "S3BucketVersioningConfigurationStatus": {
      "AllowedValues": [
        "Enabled",
        "Suspended"
      ]
    },
    "SecretsManagerTargetType": {
      "AllowedValues": [
        "AWS::DocDB::DBCluster",
        "AWS::DocDB::DBInstance",
        "AWS::RDS::DBCluster",
        "AWS::RDS::DBInstance",
        "AWS::Redshift::Cluster"
      ]
    },
    "ServiceDiscoveryDnsType": {
      "AllowedValues": [
        "A",
        "AAAA",
        "CNAME",
        "SRV"
      ]
    },
    "ServiceDiscoveryHealthCheckConfigType": {
      "AllowedValues": [
        "HTTP",
        "HTTPS",
        "TCP"
      ]
    },
    "SesReceiptRuleTlsPolicy": {
      "AllowedValues": [
        "Optional",
        "Require"
      ]
    },
    "SimpleADSize": {
      "AllowedValues": [
        "Large",
        "Small"
      ]
    },
    "SnsSubscriptionProtocol": {
      "AllowedValues": [
        "application",
        "email-json",
        "email",
        "firehose",
        "http",
        "https",
        "lambda",
        "sms",
        "sqs"
      ]
    },
    "SpotFleetExcessCapacityTerminationPolicy": {
      "AllowedValues": [
        "default",
        "noTermination"
      ]
    },
    "SpotFleetInstanceInterruptionBehavior": {
      "AllowedValues": [
        "hibernate",
        "stop",
        "terminate"
      ]
    },
    "SpotFleetType": {
      "AllowedValues": [
        "instant",
        "maintain",
        "request"
      ]
    },
    "SsmDocumentName": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::SSM::Document"
        ]
      }
    },
    "SubnetId": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String",
          "SubnetId"
        ],
        "Resources": [
          "AWS::EC2::Subnet"
        ]
      }
    },
    "SubnetIds": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "Strings",
          "SubnetIds"
        ]
      }
    },
    "TargetGroupArn": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "String"
        ],
        "Resources": [
          "AWS::ElasticLoadBalancingV2::TargetGroup"
        ]
      }
    },
    "TargetGroupArns": {
      "GetAtt": {},
      "Ref": {
        "Parameters": [
          "Strings"
        ]
      }
    },
    "TargetGroupHealthCheckTimeoutSeconds": {
      "NumberMax": 120,
      "NumberMin": 2
    },
    "TargetGroupHealthyThresholdCount": {
      "NumberMax": 10,
      "NumberMin": 2
    },
    "TransitGatewayEnabled": {
      "AllowedValues": [
        "disable",
        "enable"
      ]
    },
    "VpcEndpointConnectionEvents": {
      "AllowedValues": [
        "Accept",
        "Connect",
        "Delete",
        "Reject"
      ]
    },
    "VpcEndpointType": {
      "AllowedValues": [
        "Gateway",
        "GatewayLoadBalancer",
        "Interface"
      ]
    },
    "VpnType": {
      "AllowedValues": [
        "ipsec.1"
      ]
    },
    "WS::CodeDeploy::DeploymentGroup.TriggerConfig.TriggerEvents": {
      "AllowedValues": [
        "DeploymentFailure",
        "DeploymentReady",
        "DeploymentRollback",
        "DeploymentStart",
        "DeploymentStop",
        "DeploymentSuccess",
        "InstanceFailure",
        "InstanceReady",
        "InstanceStart",
        "InstanceSuccess"
      ]
    }
  }
}