     "S3": [
         Patch(.replace, entry:["shapes","ReplicationStatus","enum",0], value:"COMPLETED", originalValue:"COMPLETE"),
         Patch(.replace, entry:["shapes","Size","type"], value:"long", originalValue:"integer"),
+        // Add additional location constraints
         Patch(.add, entry:["shapes", "BucketLocationConstraint", "enum"], value:"us-east-2"),
         Patch(.add, entry:["shapes", "BucketLocationConstraint", "enum"], value:"eu-west-2"),
         Patch(.add, entry:["shapes", "BucketLocationConstraint", "enum"], value:"eu-west-3"),

        case remove
    }

    init(_ operation: Operation, entry: [JSONSubscriptType], value: String, originalValue: String? = nil) {
        self.operation = operation
        self.entry = entry
        self.value = value
        self.originalValue = originalValue
    }

    let operation : Operation
    let entry : [JSONSubscriptType]
    let value : CustomStringConvertible
    let originalValue : CustomStringConvertible?
}

        Patch(.add, entry:["shapes", "BucketLocationConstraint", "enum"], value:"ap-northeast-3"),
        Patch(.add, entry:["shapes", "BucketLocationConstraint", "enum"], value:"ca-central-1"),
        Patch(.add, entry:["shapes", "BucketLocationConstraint", "enum"], value:"cn-northwest-1"),
        Patch(.add, entry:["shapes", "BucketLocationConstraint", "enum"], value:"me-south-1"),
        // Add validation check for bucket name. To ensure we aren't creating buckets containing '.' in their name
        Patch(.add, entry:["shapes", "BucketName"], key:"pattern", value:"^[a-z0-9][a-z0-9-]+[a-z0-9]$")
    ]
]

