{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2020-11-12",
    "endpointPrefix":"network-firewall",
    "jsonVersion":"1.0",
    "protocol":"json",
    "serviceAbbreviation":"Network Firewall",
    "serviceFullName":"AWS Network Firewall",
    "serviceId":"Network Firewall",
    "signatureVersion":"v4",
    "signingName":"network-firewall",
    "targetPrefix":"NetworkFirewall_20201112",
    "uid":"network-firewall-2020-11-12"
  },
  "operations":{
    "AssociateFirewallPolicy":{
      "name":"AssociateFirewallPolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AssociateFirewallPolicyRequest"},
      "output":{"shape":"AssociateFirewallPolicyResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"InvalidOperationException"}
      ]
    },
    "AssociateSubnets":{
      "name":"AssociateSubnets",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AssociateSubnetsRequest"},
      "output":{"shape":"AssociateSubnetsResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"InvalidOperationException"},
        {"shape":"InsufficientCapacityException"}
      ]
    },
    "CreateFirewall":{
      "name":"CreateFirewall",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateFirewallRequest"},
      "output":{"shape":"CreateFirewallResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"LimitExceededException"},
        {"shape":"InternalServerError"},
        {"shape":"ThrottlingException"},
        {"shape":"InsufficientCapacityException"},
        {"shape":"InvalidOperationException"}
      ]
    },
    "CreateFirewallPolicy":{
      "name":"CreateFirewallPolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateFirewallPolicyRequest"},
      "output":{"shape":"CreateFirewallPolicyResponse"},
      "errors":[
        {"shape":"LimitExceededException"},
        {"shape":"InvalidRequestException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"InsufficientCapacityException"}
      ]
    },
    "CreateRuleGroup":{
      "name":"CreateRuleGroup",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateRuleGroupRequest"},
      "output":{"shape":"CreateRuleGroupResponse"},
      "errors":[
        {"shape":"LimitExceededException"},
        {"shape":"InvalidRequestException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"InsufficientCapacityException"}
      ]
    },
    "CreateTLSInspectionConfiguration":{
      "name":"CreateTLSInspectionConfiguration",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateTLSInspectionConfigurationRequest"},
      "output":{"shape":"CreateTLSInspectionConfigurationResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"LimitExceededException"},
        {"shape":"InsufficientCapacityException"}
      ]
    },
    "DeleteFirewall":{
      "name":"DeleteFirewall",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteFirewallRequest"},
      "output":{"shape":"DeleteFirewallResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"UnsupportedOperationException"},
        {"shape":"InvalidOperationException"}
      ]
    },
    "DeleteFirewallPolicy":{
      "name":"DeleteFirewallPolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteFirewallPolicyRequest"},
      "output":{"shape":"DeleteFirewallPolicyResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"UnsupportedOperationException"},
        {"shape":"InvalidOperationException"}
      ]
    },
    "DeleteResourcePolicy":{
      "name":"DeleteResourcePolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteResourcePolicyRequest"},
      "output":{"shape":"DeleteResourcePolicyResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidResourcePolicyException"}
      ]
    },
    "DeleteRuleGroup":{
      "name":"DeleteRuleGroup",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteRuleGroupRequest"},
      "output":{"shape":"DeleteRuleGroupResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"UnsupportedOperationException"},
        {"shape":"InvalidOperationException"}
      ]
    },
    "DeleteTLSInspectionConfiguration":{
      "name":"DeleteTLSInspectionConfiguration",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteTLSInspectionConfigurationRequest"},
      "output":{"shape":"DeleteTLSInspectionConfigurationResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidOperationException"}
      ]
    },
    "DescribeFirewall":{
      "name":"DescribeFirewall",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeFirewallRequest"},
      "output":{"shape":"DescribeFirewallResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ]
    },
    "DescribeFirewallPolicy":{
      "name":"DescribeFirewallPolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeFirewallPolicyRequest"},
      "output":{"shape":"DescribeFirewallPolicyResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"}
      ]
    },
    "DescribeLoggingConfiguration":{
      "name":"DescribeLoggingConfiguration",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeLoggingConfigurationRequest"},
      "output":{"shape":"DescribeLoggingConfigurationResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ]
    },
    "DescribeResourcePolicy":{
      "name":"DescribeResourcePolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeResourcePolicyRequest"},
      "output":{"shape":"DescribeResourcePolicyResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ]
    },
    "DescribeRuleGroup":{
      "name":"DescribeRuleGroup",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeRuleGroupRequest"},
      "output":{"shape":"DescribeRuleGroupResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"}
      ]
    },
    "DescribeRuleGroupMetadata":{
      "name":"DescribeRuleGroupMetadata",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeRuleGroupMetadataRequest"},
      "output":{"shape":"DescribeRuleGroupMetadataResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"}
      ]
    },
    "DescribeTLSInspectionConfiguration":{
      "name":"DescribeTLSInspectionConfiguration",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeTLSInspectionConfigurationRequest"},
      "output":{"shape":"DescribeTLSInspectionConfigurationResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ]
    },
    "DisassociateSubnets":{
      "name":"DisassociateSubnets",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DisassociateSubnetsRequest"},
      "output":{"shape":"DisassociateSubnetsResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"InvalidOperationException"}
      ]
    },
    "ListFirewallPolicies":{
      "name":"ListFirewallPolicies",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListFirewallPoliciesRequest"},
      "output":{"shape":"ListFirewallPoliciesResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"}
      ]
    },
    "ListFirewalls":{
      "name":"ListFirewalls",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListFirewallsRequest"},
      "output":{"shape":"ListFirewallsResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ThrottlingException"}
      ]
    },
    "ListRuleGroups":{
      "name":"ListRuleGroups",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListRuleGroupsRequest"},
      "output":{"shape":"ListRuleGroupsResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"}
      ]
    },
    "ListTLSInspectionConfigurations":{
      "name":"ListTLSInspectionConfigurations",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListTLSInspectionConfigurationsRequest"},
      "output":{"shape":"ListTLSInspectionConfigurationsResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ThrottlingException"}
      ]
    },
    "ListTagsForResource":{
      "name":"ListTagsForResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListTagsForResourceRequest"},
      "output":{"shape":"ListTagsForResourceResponse"},
      "errors":[
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidRequestException"}
      ]
    },
    "PutResourcePolicy":{
      "name":"PutResourcePolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"PutResourcePolicyRequest"},
      "output":{"shape":"PutResourcePolicyResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidResourcePolicyException"}
      ]
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"TagResourceRequest"},
      "output":{"shape":"TagResourceResponse"},
      "errors":[
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidRequestException"}
      ]
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UntagResourceRequest"},
      "output":{"shape":"UntagResourceResponse"},
      "errors":[
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidRequestException"}
      ]
    },
    "UpdateFirewallDeleteProtection":{
      "name":"UpdateFirewallDeleteProtection",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateFirewallDeleteProtectionRequest"},
      "output":{"shape":"UpdateFirewallDeleteProtectionResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"ResourceOwnerCheckException"}
      ]
    },
    "UpdateFirewallDescription":{
      "name":"UpdateFirewallDescription",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateFirewallDescriptionRequest"},
      "output":{"shape":"UpdateFirewallDescriptionResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"}
      ]
    },
    "UpdateFirewallEncryptionConfiguration":{
      "name":"UpdateFirewallEncryptionConfiguration",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateFirewallEncryptionConfigurationRequest"},
      "output":{"shape":"UpdateFirewallEncryptionConfigurationResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"ResourceOwnerCheckException"}
      ]
    },
    "UpdateFirewallPolicy":{
      "name":"UpdateFirewallPolicy",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateFirewallPolicyRequest"},
      "output":{"shape":"UpdateFirewallPolicyResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"InvalidTokenException"}
      ]
    },
    "UpdateFirewallPolicyChangeProtection":{
      "name":"UpdateFirewallPolicyChangeProtection",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateFirewallPolicyChangeProtectionRequest"},
      "output":{"shape":"UpdateFirewallPolicyChangeProtectionResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"ResourceOwnerCheckException"}
      ]
    },
    "UpdateLoggingConfiguration":{
      "name":"UpdateLoggingConfiguration",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateLoggingConfigurationRequest"},
      "output":{"shape":"UpdateLoggingConfigurationResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"LogDestinationPermissionException"}
      ]
    },
    "UpdateRuleGroup":{
      "name":"UpdateRuleGroup",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateRuleGroupRequest"},
      "output":{"shape":"UpdateRuleGroupResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidRequestException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"InvalidTokenException"}
      ]
    },
    "UpdateSubnetChangeProtection":{
      "name":"UpdateSubnetChangeProtection",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateSubnetChangeProtectionRequest"},
      "output":{"shape":"UpdateSubnetChangeProtectionResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"InternalServerError"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InvalidTokenException"},
        {"shape":"ResourceOwnerCheckException"}
      ]
    },
    "UpdateTLSInspectionConfiguration":{
      "name":"UpdateTLSInspectionConfiguration",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateTLSInspectionConfigurationRequest"},
      "output":{"shape":"UpdateTLSInspectionConfigurationResponse"},
      "errors":[
        {"shape":"InvalidRequestException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerError"},
        {"shape":"InvalidTokenException"}
      ]
    }
  },
  "shapes":{
    "ActionDefinition":{
      "type":"structure",
      "members":{
        "PublishMetricAction":{"shape":"PublishMetricAction"}
      }
    },
    "ActionName":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^[a-zA-Z0-9]+$"
    },
    "Address":{
      "type":"structure",
      "required":["AddressDefinition"],
      "members":{
        "AddressDefinition":{"shape":"AddressDefinition"}
      }
    },
    "AddressDefinition":{
      "type":"string",
      "max":255,
      "min":1,
      "pattern":"^([a-fA-F\\d:\\.]+($|/\\d{1,3}))$"
    },
    "Addresses":{
      "type":"list",
      "member":{"shape":"Address"}
    },
    "AnalysisResult":{
      "type":"structure",
      "members":{
        "IdentifiedRuleIds":{"shape":"RuleIdList"},
        "IdentifiedType":{"shape":"IdentifiedType"},
        "AnalysisDetail":{"shape":"CollectionMember_String"}
      }
    },
    "AnalysisResultList":{
      "type":"list",
      "member":{"shape":"AnalysisResult"}
    },
    "AssociateFirewallPolicyRequest":{
      "type":"structure",
      "required":["FirewallPolicyArn"],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "FirewallPolicyArn":{"shape":"ResourceArn"}
      }
    },
    "AssociateFirewallPolicyResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "FirewallPolicyArn":{"shape":"ResourceArn"},
        "UpdateToken":{"shape":"UpdateToken"}
      }
    },
    "AssociateSubnetsRequest":{
      "type":"structure",
      "required":["SubnetMappings"],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "SubnetMappings":{"shape":"SubnetMappings"}
      }
    },
    "AssociateSubnetsResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "SubnetMappings":{"shape":"SubnetMappings"},
        "UpdateToken":{"shape":"UpdateToken"}
      }
    },
    "Attachment":{
      "type":"structure",
      "members":{
        "SubnetId":{"shape":"AzSubnet"},
        "EndpointId":{"shape":"EndpointId"},
        "Status":{"shape":"AttachmentStatus"},
        "StatusMessage":{"shape":"StatusMessage"}
      }
    },
    "AttachmentStatus":{
      "type":"string",
      "enum":[
        "CREATING",
        "DELETING",
        "FAILED",
        "ERROR",
        "SCALING",
        "READY"
      ]
    },
    "AvailabilityZone":{"type":"string"},
    "AzSubnet":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^subnet-[0-9a-f]+$"
    },
    "AzSubnets":{
      "type":"list",
      "member":{"shape":"AzSubnet"}
    },
    "Boolean":{"type":"boolean"},
    "CIDRCount":{
      "type":"integer",
      "max":1000000,
      "min":0
    },
    "CIDRSummary":{
      "type":"structure",
      "members":{
        "AvailableCIDRCount":{"shape":"CIDRCount"},
        "UtilizedCIDRCount":{"shape":"CIDRCount"},
        "IPSetReferences":{"shape":"IPSetMetadataMap"}
      }
    },
    "CapacityUsageSummary":{
      "type":"structure",
      "members":{
        "CIDRs":{"shape":"CIDRSummary"}
      }
    },
    "Certificates":{
      "type":"list",
      "member":{"shape":"TlsCertificateData"}
    },
    "CheckCertificateRevocationStatusActions":{
      "type":"structure",
      "members":{
        "RevokedStatusAction":{"shape":"RevocationCheckAction"},
        "UnknownStatusAction":{"shape":"RevocationCheckAction"}
      }
    },
    "CollectionMember_String":{"type":"string"},
    "ConfigurationSyncState":{
      "type":"string",
      "enum":[
        "PENDING",
        "IN_SYNC",
        "CAPACITY_CONSTRAINED"
      ]
    },
    "CreateFirewallPolicyRequest":{
      "type":"structure",
      "required":[
        "FirewallPolicyName",
        "FirewallPolicy"
      ],
      "members":{
        "FirewallPolicyName":{"shape":"ResourceName"},
        "FirewallPolicy":{"shape":"FirewallPolicy"},
        "Description":{"shape":"Description"},
        "Tags":{"shape":"TagList"},
        "DryRun":{"shape":"Boolean"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}
      }
    },
    "CreateFirewallPolicyResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "FirewallPolicyResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"}
      }
    },
    "CreateFirewallRequest":{
      "type":"structure",
      "required":[
        "FirewallName",
        "FirewallPolicyArn",
        "VpcId",
        "SubnetMappings"
      ],
      "members":{
        "FirewallName":{"shape":"ResourceName"},
        "FirewallPolicyArn":{"shape":"ResourceArn"},
        "VpcId":{"shape":"VpcId"},
        "SubnetMappings":{"shape":"SubnetMappings"},
        "DeleteProtection":{"shape":"Boolean"},
        "SubnetChangeProtection":{"shape":"Boolean"},
        "FirewallPolicyChangeProtection":{"shape":"Boolean"},
        "Description":{"shape":"Description"},
        "Tags":{"shape":"TagList"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}
      }
    },
    "CreateFirewallResponse":{
      "type":"structure",
      "members":{
        "Firewall":{"shape":"Firewall"},
        "FirewallStatus":{"shape":"FirewallStatus"}
      }
    },
    "CreateRuleGroupRequest":{
      "type":"structure",
      "required":[
        "RuleGroupName",
        "Type",
        "Capacity"
      ],
      "members":{
        "RuleGroupName":{"shape":"ResourceName"},
        "RuleGroup":{"shape":"RuleGroup"},
        "Rules":{"shape":"RulesString"},
        "Type":{"shape":"RuleGroupType"},
        "Description":{"shape":"Description"},
        "Capacity":{"shape":"RuleCapacity"},
        "Tags":{"shape":"TagList"},
        "DryRun":{"shape":"Boolean"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"},
        "SourceMetadata":{"shape":"SourceMetadata"},
        "AnalyzeRuleGroup":{"shape":"Boolean"}
      }
    },
    "CreateRuleGroupResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "RuleGroupResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "RuleGroupResponse":{"shape":"RuleGroupResponse"}
      }
    },
    "CreateTLSInspectionConfigurationRequest":{
      "type":"structure",
      "required":[
        "TLSInspectionConfigurationName",
        "TLSInspectionConfiguration"
      ],
      "members":{
        "TLSInspectionConfigurationName":{"shape":"ResourceName"},
        "TLSInspectionConfiguration":{"shape":"TLSInspectionConfiguration"},
        "Description":{"shape":"Description"},
        "Tags":{"shape":"TagList"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}
      }
    },
    "CreateTLSInspectionConfigurationResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "TLSInspectionConfigurationResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "TLSInspectionConfigurationResponse":{"shape":"TLSInspectionConfigurationResponse"}
      }
    },
    "CustomAction":{
      "type":"structure",
      "required":[
        "ActionName",
        "ActionDefinition"
      ],
      "members":{
        "ActionName":{"shape":"ActionName"},
        "ActionDefinition":{"shape":"ActionDefinition"}
      }
    },
    "CustomActions":{
      "type":"list",
      "member":{"shape":"CustomAction"}
    },
    "DeleteFirewallPolicyRequest":{
      "type":"structure",
      "members":{
        "FirewallPolicyName":{"shape":"ResourceName"},
        "FirewallPolicyArn":{"shape":"ResourceArn"}
      }
    },
    "DeleteFirewallPolicyResponse":{
      "type":"structure",
      "required":["FirewallPolicyResponse"],
      "members":{
        "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"}
      }
    },
    "DeleteFirewallRequest":{
      "type":"structure",
      "members":{
        "FirewallName":{"shape":"ResourceName"},
        "FirewallArn":{"shape":"ResourceArn"}
      }
    },
    "DeleteFirewallResponse":{
      "type":"structure",
      "members":{
        "Firewall":{"shape":"Firewall"},
        "FirewallStatus":{"shape":"FirewallStatus"}
      }
    },
    "DeleteResourcePolicyRequest":{
      "type":"structure",
      "required":["ResourceArn"],
      "members":{
        "ResourceArn":{"shape":"ResourceArn"}
      }
    },
    "DeleteResourcePolicyResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteRuleGroupRequest":{
      "type":"structure",
      "members":{
        "RuleGroupName":{"shape":"ResourceName"},
        "RuleGroupArn":{"shape":"ResourceArn"},
        "Type":{"shape":"RuleGroupType"}
      }
    },
    "DeleteRuleGroupResponse":{
      "type":"structure",
      "required":["RuleGroupResponse"],
      "members":{
        "RuleGroupResponse":{"shape":"RuleGroupResponse"}
      }
    },
    "DeleteTLSInspectionConfigurationRequest":{
      "type":"structure",
      "members":{
        "TLSInspectionConfigurationArn":{"shape":"ResourceArn"},
        "TLSInspectionConfigurationName":{"shape":"ResourceName"}
      }
    },
    "DeleteTLSInspectionConfigurationResponse":{
      "type":"structure",
      "required":["TLSInspectionConfigurationResponse"],
      "members":{
        "TLSInspectionConfigurationResponse":{"shape":"TLSInspectionConfigurationResponse"}
      }
    },
    "DescribeFirewallPolicyRequest":{
      "type":"structure",
      "members":{
        "FirewallPolicyName":{"shape":"ResourceName"},
        "FirewallPolicyArn":{"shape":"ResourceArn"}
      }
    },
    "DescribeFirewallPolicyResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "FirewallPolicyResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"},
        "FirewallPolicy":{"shape":"FirewallPolicy"}
      }
    },
    "DescribeFirewallRequest":{
      "type":"structure",
      "members":{
        "FirewallName":{"shape":"ResourceName"},
        "FirewallArn":{"shape":"ResourceArn"}
      }
    },
    "DescribeFirewallResponse":{
      "type":"structure",
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "Firewall":{"shape":"Firewall"},
        "FirewallStatus":{"shape":"FirewallStatus"}
      }
    },
    "DescribeLoggingConfigurationRequest":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"}
      }
    },
    "DescribeLoggingConfigurationResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "LoggingConfiguration":{"shape":"LoggingConfiguration"}
      }
    },
    "DescribeResourcePolicyRequest":{
      "type":"structure",
      "required":["ResourceArn"],
      "members":{
        "ResourceArn":{"shape":"ResourceArn"}
      }
    },
    "DescribeResourcePolicyResponse":{
      "type":"structure",
      "members":{
        "Policy":{"shape":"PolicyString"}
      }
    },
    "DescribeRuleGroupMetadataRequest":{
      "type":"structure",
      "members":{
        "RuleGroupName":{"shape":"ResourceName"},
        "RuleGroupArn":{"shape":"ResourceArn"},
        "Type":{"shape":"RuleGroupType"}
      }
    },
    "DescribeRuleGroupMetadataResponse":{
      "type":"structure",
      "required":[
        "RuleGroupArn",
        "RuleGroupName"
      ],
      "members":{
        "RuleGroupArn":{"shape":"ResourceArn"},
        "RuleGroupName":{"shape":"ResourceName"},
        "Description":{"shape":"Description"},
        "Type":{"shape":"RuleGroupType"},
        "Capacity":{"shape":"RuleCapacity"},
        "StatefulRuleOptions":{"shape":"StatefulRuleOptions"},
        "LastModifiedTime":{"shape":"LastUpdateTime"}
      }
    },
    "DescribeRuleGroupRequest":{
      "type":"structure",
      "members":{
        "RuleGroupName":{"shape":"ResourceName"},
        "RuleGroupArn":{"shape":"ResourceArn"},
        "Type":{"shape":"RuleGroupType"},
        "AnalyzeRuleGroup":{"shape":"Boolean"}
      }
    },
    "DescribeRuleGroupResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "RuleGroupResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "RuleGroup":{"shape":"RuleGroup"},
        "RuleGroupResponse":{"shape":"RuleGroupResponse"}
      }
    },
    "DescribeTLSInspectionConfigurationRequest":{
      "type":"structure",
      "members":{
        "TLSInspectionConfigurationArn":{"shape":"ResourceArn"},
        "TLSInspectionConfigurationName":{"shape":"ResourceName"}
      }
    },
    "DescribeTLSInspectionConfigurationResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "TLSInspectionConfigurationResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "TLSInspectionConfiguration":{"shape":"TLSInspectionConfiguration"},
        "TLSInspectionConfigurationResponse":{"shape":"TLSInspectionConfigurationResponse"}
      }
    },
    "Description":{
      "type":"string",
      "max":512,
      "pattern":"^.*$"
    },
    "Destination":{
      "type":"string",
      "max":1024,
      "min":1,
      "pattern":"^.*$"
    },
    "Dimension":{
      "type":"structure",
      "required":["Value"],
      "members":{
        "Value":{"shape":"DimensionValue"}
      }
    },
    "DimensionValue":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^[a-zA-Z0-9-_ ]+$"
    },
    "Dimensions":{
      "type":"list",
      "member":{"shape":"Dimension"},
      "max":1,
      "min":1
    },
    "DisassociateSubnetsRequest":{
      "type":"structure",
      "required":["SubnetIds"],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "SubnetIds":{"shape":"AzSubnets"}
      }
    },
    "DisassociateSubnetsResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "SubnetMappings":{"shape":"SubnetMappings"},
        "UpdateToken":{"shape":"UpdateToken"}
      }
    },
    "EncryptionConfiguration":{
      "type":"structure",
      "required":["Type"],
      "members":{
        "KeyId":{"shape":"KeyId"},
        "Type":{"shape":"EncryptionType"}
      }
    },
    "EncryptionType":{
      "type":"string",
      "enum":[
        "CUSTOMER_KMS",
        "AWS_OWNED_KMS_KEY"
      ]
    },
    "EndpointId":{"type":"string"},
    "ErrorMessage":{"type":"string"},
    "Firewall":{
      "type":"structure",
      "required":[
        "FirewallPolicyArn",
        "VpcId",
        "SubnetMappings",
        "FirewallId"
      ],
      "members":{
        "FirewallName":{"shape":"ResourceName"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallPolicyArn":{"shape":"ResourceArn"},
        "VpcId":{"shape":"VpcId"},
        "SubnetMappings":{"shape":"SubnetMappings"},
        "DeleteProtection":{"shape":"Boolean"},
        "SubnetChangeProtection":{"shape":"Boolean"},
        "FirewallPolicyChangeProtection":{"shape":"Boolean"},
        "Description":{"shape":"Description"},
        "FirewallId":{"shape":"ResourceId"},
        "Tags":{"shape":"TagList"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}
      }
    },
    "FirewallMetadata":{
      "type":"structure",
      "members":{
        "FirewallName":{"shape":"ResourceName"},
        "FirewallArn":{"shape":"ResourceArn"}
      }
    },
    "FirewallPolicies":{
      "type":"list",
      "member":{"shape":"FirewallPolicyMetadata"}
    },
    "FirewallPolicy":{
      "type":"structure",
      "required":[
        "StatelessDefaultActions",
        "StatelessFragmentDefaultActions"
      ],
      "members":{
        "StatelessRuleGroupReferences":{"shape":"StatelessRuleGroupReferences"},
        "StatelessDefaultActions":{"shape":"StatelessActions"},
        "StatelessFragmentDefaultActions":{"shape":"StatelessActions"},
        "StatelessCustomActions":{"shape":"CustomActions"},
        "StatefulRuleGroupReferences":{"shape":"StatefulRuleGroupReferences"},
        "StatefulDefaultActions":{"shape":"StatefulActions"},
        "StatefulEngineOptions":{"shape":"StatefulEngineOptions"},
        "TLSInspectionConfigurationArn":{"shape":"ResourceArn"},
        "PolicyVariables":{"shape":"PolicyVariables"}
      }
    },
    "FirewallPolicyMetadata":{
      "type":"structure",
      "members":{
        "Name":{"shape":"ResourceName"},
        "Arn":{"shape":"ResourceArn"}
      }
    },
    "FirewallPolicyResponse":{
      "type":"structure",
      "required":[
        "FirewallPolicyName",
        "FirewallPolicyArn",
        "FirewallPolicyId"
      ],
      "members":{
        "FirewallPolicyName":{"shape":"ResourceName"},
        "FirewallPolicyArn":{"shape":"ResourceArn"},
        "FirewallPolicyId":{"shape":"ResourceId"},
        "Description":{"shape":"Description"},
        "FirewallPolicyStatus":{"shape":"ResourceStatus"},
        "Tags":{"shape":"TagList"},
        "ConsumedStatelessRuleCapacity":{"shape":"RuleCapacity"},
        "ConsumedStatefulRuleCapacity":{"shape":"RuleCapacity"},
        "NumberOfAssociations":{"shape":"NumberOfAssociations"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"},
        "LastModifiedTime":{"shape":"LastUpdateTime"}
      }
    },
    "FirewallStatus":{
      "type":"structure",
      "required":[
        "Status",
        "ConfigurationSyncStateSummary"
      ],
      "members":{
        "Status":{"shape":"FirewallStatusValue"},
        "ConfigurationSyncStateSummary":{"shape":"ConfigurationSyncState"},
        "SyncStates":{"shape":"SyncStates"},
        "CapacityUsageSummary":{"shape":"CapacityUsageSummary"}
      }
    },
    "FirewallStatusValue":{
      "type":"string",
      "enum":[
        "PROVISIONING",
        "DELETING",
        "READY"
      ]
    },
    "Firewalls":{
      "type":"list",
      "member":{"shape":"FirewallMetadata"}
    },
    "Flags":{
      "type":"list",
      "member":{"shape":"TCPFlag"}
    },
    "GeneratedRulesType":{
      "type":"string",
      "enum":[
        "ALLOWLIST",
        "DENYLIST"
      ]
    },
    "HashMapKey":{
      "type":"string",
      "max":50,
      "min":3,
      "pattern":"^[0-9A-Za-z.\\-_@\\/]+$"
    },
    "HashMapValue":{
      "type":"string",
      "max":1024,
      "min":1,
      "pattern":"[\\s\\S]*$"
    },
    "Header":{
      "type":"structure",
      "required":[
        "Protocol",
        "Source",
        "SourcePort",
        "Direction",
        "Destination",
        "DestinationPort"
      ],
      "members":{
        "Protocol":{"shape":"StatefulRuleProtocol"},
        "Source":{"shape":"Source"},
        "SourcePort":{"shape":"Port"},
        "Direction":{"shape":"StatefulRuleDirection"},
        "Destination":{"shape":"Destination"},
        "DestinationPort":{"shape":"Port"}
      }
    },
    "IPAddressType":{
      "type":"string",
      "enum":[
        "DUALSTACK",
        "IPV4",
        "IPV6"
      ]
    },
    "IPSet":{
      "type":"structure",
      "required":["Definition"],
      "members":{
        "Definition":{"shape":"VariableDefinitionList"}
      }
    },
    "IPSetArn":{"type":"string"},
    "IPSetMetadata":{
      "type":"structure",
      "members":{
        "ResolvedCIDRCount":{"shape":"CIDRCount"}
      }
    },
    "IPSetMetadataMap":{
      "type":"map",
      "key":{"shape":"IPSetArn"},
      "value":{"shape":"IPSetMetadata"}
    },
    "IPSetReference":{
      "type":"structure",
      "members":{
        "ReferenceArn":{"shape":"ResourceArn"}
      }
    },
    "IPSetReferenceMap":{
      "type":"map",
      "key":{"shape":"IPSetReferenceName"},
      "value":{"shape":"IPSetReference"}
    },
    "IPSetReferenceName":{
      "type":"string",
      "max":32,
      "min":1,
      "pattern":"^[A-Za-z][A-Za-z0-9_]*$"
    },
    "IPSets":{
      "type":"map",
      "key":{"shape":"RuleVariableName"},
      "value":{"shape":"IPSet"}
    },
    "IdentifiedType":{
      "type":"string",
      "enum":[
        "STATELESS_RULE_FORWARDING_ASYMMETRICALLY",
        "STATELESS_RULE_CONTAINS_TCP_FLAGS"
      ]
    },
    "InsufficientCapacityException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true,
      "fault":true
    },
    "InternalServerError":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true,
      "fault":true
    },
    "InvalidOperationException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "InvalidRequestException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "InvalidResourcePolicyException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "InvalidTokenException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "KeyId":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":".*\\S.*"
    },
    "Keyword":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":".*"
    },
    "LastUpdateTime":{"type":"timestamp"},
    "LimitExceededException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "ListFirewallPoliciesRequest":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "MaxResults":{"shape":"PaginationMaxResults"}
      }
    },
    "ListFirewallPoliciesResponse":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "FirewallPolicies":{"shape":"FirewallPolicies"}
      }
    },
    "ListFirewallsRequest":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "VpcIds":{"shape":"VpcIds"},
        "MaxResults":{"shape":"PaginationMaxResults"}
      }
    },
    "ListFirewallsResponse":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "Firewalls":{"shape":"Firewalls"}
      }
    },
    "ListRuleGroupsRequest":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "MaxResults":{"shape":"PaginationMaxResults"},
        "Scope":{"shape":"ResourceManagedStatus"},
        "ManagedType":{"shape":"ResourceManagedType"},
        "Type":{"shape":"RuleGroupType"}
      }
    },
    "ListRuleGroupsResponse":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "RuleGroups":{"shape":"RuleGroups"}
      }
    },
    "ListTLSInspectionConfigurationsRequest":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "MaxResults":{"shape":"PaginationMaxResults"}
      }
    },
    "ListTLSInspectionConfigurationsResponse":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "TLSInspectionConfigurations":{"shape":"TLSInspectionConfigurations"}
      }
    },
    "ListTagsForResourceRequest":{
      "type":"structure",
      "required":["ResourceArn"],
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "MaxResults":{"shape":"TagsPaginationMaxResults"},
        "ResourceArn":{"shape":"ResourceArn"}
      }
    },
    "ListTagsForResourceResponse":{
      "type":"structure",
      "members":{
        "NextToken":{"shape":"PaginationToken"},
        "Tags":{"shape":"TagList"}
      }
    },
    "LogDestinationConfig":{
      "type":"structure",
      "required":[
        "LogType",
        "LogDestinationType",
        "LogDestination"
      ],
      "members":{
        "LogType":{"shape":"LogType"},
        "LogDestinationType":{"shape":"LogDestinationType"},
        "LogDestination":{"shape":"LogDestinationMap"}
      }
    },
    "LogDestinationConfigs":{
      "type":"list",
      "member":{"shape":"LogDestinationConfig"}
    },
    "LogDestinationMap":{
      "type":"map",
      "key":{"shape":"HashMapKey"},
      "value":{"shape":"HashMapValue"}
    },
    "LogDestinationPermissionException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "LogDestinationType":{
      "type":"string",
      "enum":[
        "S3",
        "CloudWatchLogs",
        "KinesisDataFirehose"
      ],
      "max":30,
      "min":2,
      "pattern":"[0-9A-Za-z]+"
    },
    "LogType":{
      "type":"string",
      "enum":[
        "ALERT",
        "FLOW"
      ]
    },
    "LoggingConfiguration":{
      "type":"structure",
      "required":["LogDestinationConfigs"],
      "members":{
        "LogDestinationConfigs":{"shape":"LogDestinationConfigs"}
      }
    },
    "MatchAttributes":{
      "type":"structure",
      "members":{
        "Sources":{"shape":"Addresses"},
        "Destinations":{"shape":"Addresses"},
        "SourcePorts":{"shape":"PortRanges"},
        "DestinationPorts":{"shape":"PortRanges"},
        "Protocols":{"shape":"ProtocolNumbers"},
        "TCPFlags":{"shape":"TCPFlags"}
      }
    },
    "NumberOfAssociations":{"type":"integer"},
    "OverrideAction":{
      "type":"string",
      "enum":["DROP_TO_ALERT"]
    },
    "PaginationMaxResults":{
      "type":"integer",
      "max":100,
      "min":1
    },
    "PaginationToken":{
      "type":"string",
      "max":4096,
      "min":1,
      "pattern":"[0-9A-Za-z:\\/+=]+$"
    },
    "PerObjectStatus":{
      "type":"structure",
      "members":{
        "SyncStatus":{"shape":"PerObjectSyncStatus"},
        "UpdateToken":{"shape":"UpdateToken"}
      }
    },
    "PerObjectSyncStatus":{
      "type":"string",
      "enum":[
        "PENDING",
        "IN_SYNC",
        "CAPACITY_CONSTRAINED"
      ]
    },
    "PolicyString":{
      "type":"string",
      "max":395000,
      "min":1,
      "pattern":".*\\S.*"
    },
    "PolicyVariables":{
      "type":"structure",
      "members":{
        "RuleVariables":{"shape":"IPSets"}
      }
    },
    "Port":{
      "type":"string",
      "max":1024,
      "min":1,
      "pattern":"^.*$"
    },
    "PortRange":{
      "type":"structure",
      "required":[
        "FromPort",
        "ToPort"
      ],
      "members":{
        "FromPort":{"shape":"PortRangeBound"},
        "ToPort":{"shape":"PortRangeBound"}
      }
    },
    "PortRangeBound":{
      "type":"integer",
      "max":65535,
      "min":0
    },
    "PortRanges":{
      "type":"list",
      "member":{"shape":"PortRange"}
    },
    "PortSet":{
      "type":"structure",
      "members":{
        "Definition":{"shape":"VariableDefinitionList"}
      }
    },
    "PortSets":{
      "type":"map",
      "key":{"shape":"RuleVariableName"},
      "value":{"shape":"PortSet"}
    },
    "Priority":{
      "type":"integer",
      "max":65535,
      "min":1
    },
    "ProtocolNumber":{
      "type":"integer",
      "max":255,
      "min":0
    },
    "ProtocolNumbers":{
      "type":"list",
      "member":{"shape":"ProtocolNumber"}
    },
    "PublishMetricAction":{
      "type":"structure",
      "required":["Dimensions"],
      "members":{
        "Dimensions":{"shape":"Dimensions"}
      }
    },
    "PutResourcePolicyRequest":{
      "type":"structure",
      "required":[
        "ResourceArn",
        "Policy"
      ],
      "members":{
        "ResourceArn":{"shape":"ResourceArn"},
        "Policy":{"shape":"PolicyString"}
      }
    },
    "PutResourcePolicyResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ReferenceSets":{
      "type":"structure",
      "members":{
        "IPSetReferences":{"shape":"IPSetReferenceMap"}
      }
    },
    "ResourceArn":{
      "type":"string",
      "max":256,
      "min":1,
      "pattern":"^arn:aws.*"
    },
    "ResourceId":{
      "type":"string",
      "max":36,
      "min":36,
      "pattern":"^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$"
    },
    "ResourceManagedStatus":{
      "type":"string",
      "enum":[
        "MANAGED",
        "ACCOUNT"
      ]
    },
    "ResourceManagedType":{
      "type":"string",
      "enum":[
        "AWS_MANAGED_THREAT_SIGNATURES",
        "AWS_MANAGED_DOMAIN_LISTS"
      ]
    },
    "ResourceName":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^[a-zA-Z0-9-]+$"
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "ResourceOwnerCheckException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "ResourceStatus":{
      "type":"string",
      "enum":[
        "ACTIVE",
        "DELETING",
        "ERROR"
      ]
    },
    "RevocationCheckAction":{
      "type":"string",
      "enum":[
        "PASS",
        "DROP",
        "REJECT"
      ]
    },
    "RuleCapacity":{"type":"integer"},
    "RuleDefinition":{
      "type":"structure",
      "required":[
        "MatchAttributes",
        "Actions"
      ],
      "members":{
        "MatchAttributes":{"shape":"MatchAttributes"},
        "Actions":{"shape":"StatelessActions"}
      }
    },
    "RuleGroup":{
      "type":"structure",
      "required":["RulesSource"],
      "members":{
        "RuleVariables":{"shape":"RuleVariables"},
        "ReferenceSets":{"shape":"ReferenceSets"},
        "RulesSource":{"shape":"RulesSource"},
        "StatefulRuleOptions":{"shape":"StatefulRuleOptions"}
      }
    },
    "RuleGroupMetadata":{
      "type":"structure",
      "members":{
        "Name":{"shape":"ResourceName"},
        "Arn":{"shape":"ResourceArn"}
      }
    },
    "RuleGroupResponse":{
      "type":"structure",
      "required":[
        "RuleGroupArn",
        "RuleGroupName",
        "RuleGroupId"
      ],
      "members":{
        "RuleGroupArn":{"shape":"ResourceArn"},
        "RuleGroupName":{"shape":"ResourceName"},
        "RuleGroupId":{"shape":"ResourceId"},
        "Description":{"shape":"Description"},
        "Type":{"shape":"RuleGroupType"},
        "Capacity":{"shape":"RuleCapacity"},
        "RuleGroupStatus":{"shape":"ResourceStatus"},
        "Tags":{"shape":"TagList"},
        "ConsumedCapacity":{"shape":"RuleCapacity"},
        "NumberOfAssociations":{"shape":"NumberOfAssociations"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"},
        "SourceMetadata":{"shape":"SourceMetadata"},
        "SnsTopic":{"shape":"ResourceArn"},
        "LastModifiedTime":{"shape":"LastUpdateTime"},
        "AnalysisResults":{"shape":"AnalysisResultList"}
      }
    },
    "RuleGroupType":{
      "type":"string",
      "enum":[
        "STATELESS",
        "STATEFUL"
      ]
    },
    "RuleGroups":{
      "type":"list",
      "member":{"shape":"RuleGroupMetadata"}
    },
    "RuleIdList":{
      "type":"list",
      "member":{"shape":"CollectionMember_String"}
    },
    "RuleOption":{
      "type":"structure",
      "required":["Keyword"],
      "members":{
        "Keyword":{"shape":"Keyword"},
        "Settings":{"shape":"Settings"}
      }
    },
    "RuleOptions":{
      "type":"list",
      "member":{"shape":"RuleOption"}
    },
    "RuleOrder":{
      "type":"string",
      "enum":[
        "DEFAULT_ACTION_ORDER",
        "STRICT_ORDER"
      ]
    },
    "RuleTargets":{
      "type":"list",
      "member":{"shape":"CollectionMember_String"}
    },
    "RuleVariableName":{
      "type":"string",
      "max":32,
      "min":1,
      "pattern":"^[A-Za-z][A-Za-z0-9_]*$"
    },
    "RuleVariables":{
      "type":"structure",
      "members":{
        "IPSets":{"shape":"IPSets"},
        "PortSets":{"shape":"PortSets"}
      }
    },
    "RulesSource":{
      "type":"structure",
      "members":{
        "RulesString":{"shape":"RulesString"},
        "RulesSourceList":{"shape":"RulesSourceList"},
        "StatefulRules":{"shape":"StatefulRules"},
        "StatelessRulesAndCustomActions":{"shape":"StatelessRulesAndCustomActions"}
      }
    },
    "RulesSourceList":{
      "type":"structure",
      "required":[
        "Targets",
        "TargetTypes",
        "GeneratedRulesType"
      ],
      "members":{
        "Targets":{"shape":"RuleTargets"},
        "TargetTypes":{"shape":"TargetTypes"},
        "GeneratedRulesType":{"shape":"GeneratedRulesType"}
      }
    },
    "RulesString":{
      "type":"string",
      "max":2000000,
      "min":0
    },
    "ServerCertificate":{
      "type":"structure",
      "members":{
        "ResourceArn":{"shape":"ResourceArn"}
      }
    },
    "ServerCertificateConfiguration":{
      "type":"structure",
      "members":{
        "ServerCertificates":{"shape":"ServerCertificates"},
        "Scopes":{"shape":"ServerCertificateScopes"},
        "CertificateAuthorityArn":{"shape":"ResourceArn"},
        "CheckCertificateRevocationStatus":{"shape":"CheckCertificateRevocationStatusActions"}
      }
    },
    "ServerCertificateConfigurations":{
      "type":"list",
      "member":{"shape":"ServerCertificateConfiguration"}
    },
    "ServerCertificateScope":{
      "type":"structure",
      "members":{
        "Sources":{"shape":"Addresses"},
        "Destinations":{"shape":"Addresses"},
        "SourcePorts":{"shape":"PortRanges"},
        "DestinationPorts":{"shape":"PortRanges"},
        "Protocols":{"shape":"ProtocolNumbers"}
      }
    },
    "ServerCertificateScopes":{
      "type":"list",
      "member":{"shape":"ServerCertificateScope"}
    },
    "ServerCertificates":{
      "type":"list",
      "member":{"shape":"ServerCertificate"}
    },
    "Setting":{
      "type":"string",
      "max":8192,
      "min":1,
      "pattern":".*"
    },
    "Settings":{
      "type":"list",
      "member":{"shape":"Setting"}
    },
    "Source":{
      "type":"string",
      "max":1024,
      "min":1,
      "pattern":"^.*$"
    },
    "SourceMetadata":{
      "type":"structure",
      "members":{
        "SourceArn":{"shape":"ResourceArn"},
        "SourceUpdateToken":{"shape":"UpdateToken"}
      }
    },
    "StatefulAction":{
      "type":"string",
      "enum":[
        "PASS",
        "DROP",
        "ALERT",
        "REJECT"
      ]
    },
    "StatefulActions":{
      "type":"list",
      "member":{"shape":"CollectionMember_String"}
    },
    "StatefulEngineOptions":{
      "type":"structure",
      "members":{
        "RuleOrder":{"shape":"RuleOrder"},
        "StreamExceptionPolicy":{"shape":"StreamExceptionPolicy"}
      }
    },
    "StatefulRule":{
      "type":"structure",
      "required":[
        "Action",
        "Header",
        "RuleOptions"
      ],
      "members":{
        "Action":{"shape":"StatefulAction"},
        "Header":{"shape":"Header"},
        "RuleOptions":{"shape":"RuleOptions"}
      }
    },
    "StatefulRuleDirection":{
      "type":"string",
      "enum":[
        "FORWARD",
        "ANY"
      ]
    },
    "StatefulRuleGroupOverride":{
      "type":"structure",
      "members":{
        "Action":{"shape":"OverrideAction"}
      }
    },
    "StatefulRuleGroupReference":{
      "type":"structure",
      "required":["ResourceArn"],
      "members":{
        "ResourceArn":{"shape":"ResourceArn"},
        "Priority":{
          "shape":"Priority",
          "box":true
        },
        "Override":{"shape":"StatefulRuleGroupOverride"}
      }
    },
    "StatefulRuleGroupReferences":{
      "type":"list",
      "member":{"shape":"StatefulRuleGroupReference"}
    },
    "StatefulRuleOptions":{
      "type":"structure",
      "members":{
        "RuleOrder":{"shape":"RuleOrder"}
      }
    },
    "StatefulRuleProtocol":{
      "type":"string",
      "enum":[
        "IP",
        "TCP",
        "UDP",
        "ICMP",
        "HTTP",
        "FTP",
        "TLS",
        "SMB",
        "DNS",
        "DCERPC",
        "SSH",
        "SMTP",
        "IMAP",
        "MSN",
        "KRB5",
        "IKEV2",
        "TFTP",
        "NTP",
        "DHCP"
      ]
    },
    "StatefulRules":{
      "type":"list",
      "member":{"shape":"StatefulRule"}
    },
    "StatelessActions":{
      "type":"list",
      "member":{"shape":"CollectionMember_String"}
    },
    "StatelessRule":{
      "type":"structure",
      "required":[
        "RuleDefinition",
        "Priority"
      ],
      "members":{
        "RuleDefinition":{"shape":"RuleDefinition"},
        "Priority":{"shape":"Priority"}
      }
    },
    "StatelessRuleGroupReference":{
      "type":"structure",
      "required":[
        "ResourceArn",
        "Priority"
      ],
      "members":{
        "ResourceArn":{"shape":"ResourceArn"},
        "Priority":{"shape":"Priority"}
      }
    },
    "StatelessRuleGroupReferences":{
      "type":"list",
      "member":{"shape":"StatelessRuleGroupReference"}
    },
    "StatelessRules":{
      "type":"list",
      "member":{"shape":"StatelessRule"}
    },
    "StatelessRulesAndCustomActions":{
      "type":"structure",
      "required":["StatelessRules"],
      "members":{
        "StatelessRules":{"shape":"StatelessRules"},
        "CustomActions":{"shape":"CustomActions"}
      }
    },
    "StatusMessage":{"type":"string"},
    "StatusReason":{
      "type":"string",
      "max":256,
      "min":1,
      "pattern":"^[a-zA-Z0-9- ]+$"
    },
    "StreamExceptionPolicy":{
      "type":"string",
      "enum":[
        "DROP",
        "CONTINUE",
        "REJECT"
      ]
    },
    "SubnetMapping":{
      "type":"structure",
      "required":["SubnetId"],
      "members":{
        "SubnetId":{"shape":"CollectionMember_String"},
        "IPAddressType":{"shape":"IPAddressType"}
      }
    },
    "SubnetMappings":{
      "type":"list",
      "member":{"shape":"SubnetMapping"}
    },
    "SyncState":{
      "type":"structure",
      "members":{
        "Attachment":{"shape":"Attachment"},
        "Config":{"shape":"SyncStateConfig"}
      }
    },
    "SyncStateConfig":{
      "type":"map",
      "key":{"shape":"ResourceName"},
      "value":{"shape":"PerObjectStatus"}
    },
    "SyncStates":{
      "type":"map",
      "key":{"shape":"AvailabilityZone"},
      "value":{"shape":"SyncState"}
    },
    "TCPFlag":{
      "type":"string",
      "enum":[
        "FIN",
        "SYN",
        "RST",
        "PSH",
        "ACK",
        "URG",
        "ECE",
        "CWR"
      ]
    },
    "TCPFlagField":{
      "type":"structure",
      "required":["Flags"],
      "members":{
        "Flags":{"shape":"Flags"},
        "Masks":{"shape":"Flags"}
      }
    },
    "TCPFlags":{
      "type":"list",
      "member":{"shape":"TCPFlagField"}
    },
    "TLSInspectionConfiguration":{
      "type":"structure",
      "members":{
        "ServerCertificateConfigurations":{"shape":"ServerCertificateConfigurations"}
      }
    },
    "TLSInspectionConfigurationMetadata":{
      "type":"structure",
      "members":{
        "Name":{"shape":"ResourceName"},
        "Arn":{"shape":"ResourceArn"}
      }
    },
    "TLSInspectionConfigurationResponse":{
      "type":"structure",
      "required":[
        "TLSInspectionConfigurationArn",
        "TLSInspectionConfigurationName",
        "TLSInspectionConfigurationId"
      ],
      "members":{
        "TLSInspectionConfigurationArn":{"shape":"ResourceArn"},
        "TLSInspectionConfigurationName":{"shape":"ResourceName"},
        "TLSInspectionConfigurationId":{"shape":"ResourceId"},
        "TLSInspectionConfigurationStatus":{"shape":"ResourceStatus"},
        "Description":{"shape":"Description"},
        "Tags":{"shape":"TagList"},
        "LastModifiedTime":{"shape":"LastUpdateTime"},
        "NumberOfAssociations":{"shape":"NumberOfAssociations"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"},
        "Certificates":{"shape":"Certificates"},
        "CertificateAuthority":{"shape":"TlsCertificateData"}
      }
    },
    "TLSInspectionConfigurations":{
      "type":"list",
      "member":{"shape":"TLSInspectionConfigurationMetadata"}
    },
    "Tag":{
      "type":"structure",
      "required":[
        "Key",
        "Value"
      ],
      "members":{
        "Key":{"shape":"TagKey"},
        "Value":{"shape":"TagValue"}
      }
    },
    "TagKey":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^.*$"
    },
    "TagKeyList":{
      "type":"list",
      "member":{"shape":"TagKey"},
      "max":200,
      "min":1
    },
    "TagList":{
      "type":"list",
      "member":{"shape":"Tag"},
      "max":200,
      "min":1
    },
    "TagResourceRequest":{
      "type":"structure",
      "required":[
        "ResourceArn",
        "Tags"
      ],
      "members":{
        "ResourceArn":{"shape":"ResourceArn"},
        "Tags":{"shape":"TagList"}
      }
    },
    "TagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "TagValue":{
      "type":"string",
      "max":256,
      "min":0,
      "pattern":"^.*$"
    },
    "TagsPaginationMaxResults":{
      "type":"integer",
      "max":100,
      "min":0
    },
    "TargetType":{
      "type":"string",
      "enum":[
        "TLS_SNI",
        "HTTP_HOST"
      ]
    },
    "TargetTypes":{
      "type":"list",
      "member":{"shape":"TargetType"}
    },
    "ThrottlingException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "TlsCertificateData":{
      "type":"structure",
      "members":{
        "CertificateArn":{"shape":"ResourceArn"},
        "CertificateSerial":{"shape":"CollectionMember_String"},
        "Status":{"shape":"CollectionMember_String"},
        "StatusMessage":{"shape":"StatusReason"}
      }
    },
    "UnsupportedOperationException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "UntagResourceRequest":{
      "type":"structure",
      "required":[
        "ResourceArn",
        "TagKeys"
      ],
      "members":{
        "ResourceArn":{"shape":"ResourceArn"},
        "TagKeys":{"shape":"TagKeyList"}
      }
    },
    "UntagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateFirewallDeleteProtectionRequest":{
      "type":"structure",
      "required":["DeleteProtection"],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "DeleteProtection":{"shape":"Boolean"}
      }
    },
    "UpdateFirewallDeleteProtectionResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "DeleteProtection":{"shape":"Boolean"},
        "UpdateToken":{"shape":"UpdateToken"}
      }
    },
    "UpdateFirewallDescriptionRequest":{
      "type":"structure",
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "Description":{"shape":"Description"}
      }
    },
    "UpdateFirewallDescriptionResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "Description":{"shape":"Description"},
        "UpdateToken":{"shape":"UpdateToken"}
      }
    },
    "UpdateFirewallEncryptionConfigurationRequest":{
      "type":"structure",
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}
      }
    },
    "UpdateFirewallEncryptionConfigurationResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "UpdateToken":{"shape":"UpdateToken"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}
      }
    },
    "UpdateFirewallPolicyChangeProtectionRequest":{
      "type":"structure",
      "required":["FirewallPolicyChangeProtection"],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "FirewallPolicyChangeProtection":{"shape":"Boolean"}
      }
    },
    "UpdateFirewallPolicyChangeProtectionResponse":{
      "type":"structure",
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "FirewallPolicyChangeProtection":{"shape":"Boolean"}
      }
    },
    "UpdateFirewallPolicyRequest":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "FirewallPolicy"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallPolicyArn":{"shape":"ResourceArn"},
        "FirewallPolicyName":{"shape":"ResourceName"},
        "FirewallPolicy":{"shape":"FirewallPolicy"},
        "Description":{"shape":"Description"},
        "DryRun":{"shape":"Boolean"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}
      }
    },
    "UpdateFirewallPolicyResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "FirewallPolicyResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"}
      }
    },
    "UpdateLoggingConfigurationRequest":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "LoggingConfiguration":{"shape":"LoggingConfiguration"}
      }
    },
    "UpdateLoggingConfigurationResponse":{
      "type":"structure",
      "members":{
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "LoggingConfiguration":{"shape":"LoggingConfiguration"}
      }
    },
    "UpdateRuleGroupRequest":{
      "type":"structure",
      "required":["UpdateToken"],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "RuleGroupArn":{"shape":"ResourceArn"},
        "RuleGroupName":{"shape":"ResourceName"},
        "RuleGroup":{"shape":"RuleGroup"},
        "Rules":{"shape":"RulesString"},
        "Type":{"shape":"RuleGroupType"},
        "Description":{"shape":"Description"},
        "DryRun":{"shape":"Boolean"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"},
        "SourceMetadata":{"shape":"SourceMetadata"},
        "AnalyzeRuleGroup":{"shape":"Boolean"}
      }
    },
    "UpdateRuleGroupResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "RuleGroupResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "RuleGroupResponse":{"shape":"RuleGroupResponse"}
      }
    },
    "UpdateSubnetChangeProtectionRequest":{
      "type":"structure",
      "required":["SubnetChangeProtection"],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "SubnetChangeProtection":{"shape":"Boolean"}
      }
    },
    "UpdateSubnetChangeProtectionResponse":{
      "type":"structure",
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "FirewallArn":{"shape":"ResourceArn"},
        "FirewallName":{"shape":"ResourceName"},
        "SubnetChangeProtection":{"shape":"Boolean"}
      }
    },
    "UpdateTLSInspectionConfigurationRequest":{
      "type":"structure",
      "required":[
        "TLSInspectionConfiguration",
        "UpdateToken"
      ],
      "members":{
        "TLSInspectionConfigurationArn":{"shape":"ResourceArn"},
        "TLSInspectionConfigurationName":{"shape":"ResourceName"},
        "TLSInspectionConfiguration":{"shape":"TLSInspectionConfiguration"},
        "Description":{"shape":"Description"},
        "EncryptionConfiguration":{"shape":"EncryptionConfiguration"},
        "UpdateToken":{"shape":"UpdateToken"}
      }
    },
    "UpdateTLSInspectionConfigurationResponse":{
      "type":"structure",
      "required":[
        "UpdateToken",
        "TLSInspectionConfigurationResponse"
      ],
      "members":{
        "UpdateToken":{"shape":"UpdateToken"},
        "TLSInspectionConfigurationResponse":{"shape":"TLSInspectionConfigurationResponse"}
      }
    },
    "UpdateToken":{
      "type":"string",
      "max":1024,
      "min":1,
      "pattern":"^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$"
    },
    "VariableDefinition":{
      "type":"string",
      "min":1,
      "pattern":"^.*$"
    },
    "VariableDefinitionList":{
      "type":"list",
      "member":{"shape":"VariableDefinition"}
    },
    "VpcId":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^vpc-[0-9a-f]+$"
    },
    "VpcIds":{
      "type":"list",
      "member":{"shape":"VpcId"}
    }
  }
}
